【发布时间】:2013-06-21 04:48:30
【问题描述】:
如果我有一个将偶数添加到数组的简单测试函数:
function isEven(n){
var enumbers = [];
if (n % 2 == 0){
enumbers.push (n);
}
}
如何增加我的参数,直到我的数组中有一定数量的成员?例如,我试过这个:
function isEven(n){
var enumbers = [];
while ( enumbers.length < 10){
if (n % 2 == 0){
enumbers.push (n);
}
console.log (enumbers);
n = n + 1;
isEven(n);
}
}
isEven(1);
但它似乎只是为每个数字创建一个新数组,直到它最终引发范围错误(超出最大调用堆栈大小)。
【问题讨论】:
-
测试
enumbers.length? -
您在循环中递归调用
isEven。因此,对于每个函数调用,您实际上都会额外调用您的函数 10 次。 -
这是一个错字...我已经更正了,但我得到了相同的结果。
-
这个函数应该做什么?
-
继续评估数字 1 到将预定(在本例中为 10)个偶数推入“enumbers”数组所需的次数。
标签: javascript