当我在 Node.js 中执行以下代码时,出现以下错误:
RangeError: Maximum call stack size exceeded
这是代码:
var arr = [];
for (var i = 0; i <= 1000000; i++)
arr.push(i);
function nextStep(index) {
if (index === arr.length) {
return;
} else {
console.log(index);
}
nextStep(++index);
}
nextStep(0);
我不知道发生了什么,但在 index = 17938 附近,执行终止。
使用setTimeout()
帮助。这里有什么问题?