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()
役立ちます。ここで何が問題なのですか?