首页 > 解决方案 > Node.js:无限循环失败且没有错误

问题描述

我明白为什么nodejs中的这段代码会抛出最大调用堆栈大小超出错误

function infinite(i) {
    i++;
    infinite(i);
}
infinite(0);

但是当我添加 console.log(i); 像这样的功能

function infinite(i) {
    i++;
    console.log(i);
    infinite(i);
}
infinite(0);

一段时间后执行失败,没有任何错误,所以我的问题在这里有什么区别?在这两种情况下,该函数都被递归调用,因此它应该导致最大调用堆栈大小超出错误。

这种输出阻塞是因为我使用console.log()了所以节点无法打印错误吗?

标签: javascriptnode.js

解决方案


推荐阅读