node.js - 如何在 NodeJS 中创建无限循环

标签 node.js loops while-loop settimeout

我在 JS 上看到了一堆关于无限循环的答案,我认为这对我的代码有帮助,但它似乎无法正常工作。 我有那个:

var i = 0

while (true) {
  setTimeout(() => {
    i ++
    console.log('Infinite Loop Test n:', i);
  }, 2000)
}

目标是在无限循环中每 2 秒获取一次日志,但我似乎无法取回任何东西……我错在哪里了?

提前感谢您一如既往的帮助!

最佳答案

你为什么要 while 循环?使用 setInterval,或者(更好)创建一个在超时后再次调用自身的函数:

function logEvery2Seconds(i) {
    setTimeout(() => {
        console.log('Infinite Loop Test n:', i);
        logEvery2Seconds(++i);
    }, 2000)
}

logEvery2Seconds(0);

let i = 0;
setInterval(() => {
    console.log('Infinite Loop Test interval n:', i++);
}, 2000)

关于node.js - 如何在 NodeJS 中创建无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45531690/

相关文章:

javascript - 如何从 JavaScript 中查询数据库的 for 循环返回值?

Javascript - 将数组搜索中的第一个值与其他数组中的值匹配

python - 如何减少语句中的条件数量?

html - 从 mongoDB 中获取数据并显示在 HTML 上

javascript - 如何使用 DialogFlow 实现在回调函数内传递参数

node.js - 使用 http-proxy-middleware 处理 WebSocket 错误

c++ - C++ 的其他循环选项

c - char 变量的问题

c++ - 我怎样才能让程序只注册一个按键与 getch 或不同的功能?

java - java中异常时无限循环