我正在使用 NodeJs 并且需要调用一个无限函数,但我不知道什么是最佳性能的最佳方法。
递归函数
function test(){
//my code
test();
}
设置间隔
setInterval(function(){
//my code
},60);
设置超时
function test(){
//my code
setTimeout(test,60);
}
我想要在不崩溃服务器的情况下获得最佳性能。我的代码有几个算术运算。
感谢任何优化 javascript 性能的建议。
原文由 J261 发布,翻译遵循 CC BY-SA 4.0 许可协议
小心……您的第一个代码会阻止 JavaScript 事件循环。
基本上在 JS 中类似于应该处理的函数列表。当您调用
setTimeout
,setInterval
或process.nextTick
时,您将向此列表添加给定函数,当合适的时间到来时,它将被处理..第一种情况下的代码永远不会停止,因此它永远不会让事件列表中的其他函数得到处理。
第二和第三种情况很好.. 有一点不同。
例如,如果您的函数需要处理 10 毫秒,而间隔将是您的 60 毫秒。
因此,不同之处在于函数启动之间的延迟,这在某些基于间隔的系统中可能很重要,例如游戏、拍卖、股票市场等。
祝你递归好运:-)