我想循环等待,实现此目的的最佳方法是什么?
这是我的实际代码:
var groups = ['461', '6726', '3284', '4', '121', '11', '399', '1735', '17', '19', '1614 ];
groups.forEach(function (value) {
myfunction(value);
});
我希望每 5 分钟调用一次 myfunction()。
我想循环访问组数组一次,并在每个项目之间等待,直到读取末尾
最好的方法是什么?
最佳答案
2017 年更新
使用 es6、promise 和 async/await 现在有一些很好的方法可以做到这一点。例如:
使用异步/等待:
const groups = [1, 2, 3, 4, 5];
function wait(milleseconds) {
return new Promise(resolve => setTimeout(resolve, milleseconds))
}
async function send(groups) {
for (item of groups) {
await wait(500)
console.log(item)
}
}
send(groups)
将迭代器协议(protocol)与 setInterval 结合使用
const groups = [1, 2, 3, 4, 5, 6]
const intv = setInterval(gen => {
const n = gen.next()
if (n.done) return clearInterval(intv)
console.log(n.value)
}, 500, groups[Symbol.iterator]())
关于node.js - Nodejs 在循环中等待,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23316525/