Code Academy 4/26 Javascript Recursion

Code Academy 4/26 Javascript Recursion

本文关键字:Javascript Recursion Academy Code      更新时间:2023-09-26

我正在学习JavaScript中的递归(或尝试),并且我已经完成了代码学院要求我的所有工作,但无论如何,总有一些问题。谁能告诉我(谢谢你!)我哪里做错了?Code Academy只是报告有一个错误,但它没有告诉我在哪里。

这是我的代码,我在下面粘贴了说明。

function multiplyBy10(number) {
  console.log(number * 10);
}
function multiplesOf10(limit) {
   for(i=1;i==limit;i++){
    multiplyBy10(i);
   }
}
multiplesOf10(100);

指令:

通过添加for循环完成multiplesOf10()的定义。

for循环从i = 1开始,当i等于limit时结束。

在for循环中,调用函数multiplyBy10()并将变量i作为参数传递给它。

最后,在代码末尾调用函数multiplesOf10(),传递任意整数作为参数。

在指令中我发现循环应该从I = 1开始,并在I等于limit的值时结束,但您的条件是for(i=1;i==limit;i++)一直都是假的。所以你需要改变你的状况。这是正确的:

for(i=1;i<=limit;i++)

这里有一个递归的例子,可能它不是你问题的答案,但你可能理解它是如何工作的(代码中的注释是对发生的事情的解释):

 array = [];  //this array is going to be populated by one entry each time we call the function 
function multiplesOf10(limit) {
 
  if (limit == 0 ){return array}//this is the end point or recusion and will return the array with results
  
  array.unshift(10*limit);//will add the entry to beginning of array
  
  return multiplesOf10(limit-1);//recursion
  
}
console.log(multiplesOf10(10));