延迟节点js中的每个循环迭代,异步

延迟节点js中的每个循环迭代,异步,第1张

延迟节点js中的每个循环迭代,异步

您可以设置超时时间,以增加代码间隔,如下所示:

var interval = 10 * 1000; // 10 seconds;for (var i = 0; i <=TheUrl.length-1; i++) {    setTimeout( function (i) {        var url = 'www.myurl.com='+TheUrl[i];        request(url, function(error, resp, body) {  if (error) return callback(error);  var $ = cheerio.load(body); //Some calculations again... callback();        });    }, interval * i, i);}

因此,第一个立即运行(间隔* 0为0),第二个在十秒钟后运行,依此类推。

您需要在中

i
作为最终参数发送,
setTimeout()
以便将其值绑定到function参数。否则,尝试访问数组值将超出范围,您将获得
undefined



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5173061.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存