gpt4 book ai didi

javascript - 如何从 Node.js 中的异步循环返回

转载 作者:行者123 更新时间:2023-11-30 18:23:12 24 4
gpt4 key购买 nike

使用 async 时流控制库,特别是 async.forEach 在需要跳过特定项目时如何正确执行回调。

例子:

async.forEach(bigCollection, function(item, callback) {

if(skipThis) {
return callback();
// OR BELLOW IS BETTER??
//return process.nextTick(callback);
}

db.query(query, callback);

}, callback);

如果我不使用 process.nextTick(callback) 如果 bigCollection 太大,我是否有遇到堆栈溢出的风险?如果我确实使用了 process.nextTick(callback),我是否会破坏我的代码?

我已经养成以 process.nextTick(callback) 方式执行此操作的习惯,但我不确定这样做是否是一个好习惯。

最佳答案

我会说没有 nextTick 也没关系。

async.forEach(bigCollection, function(item, callback) {
if(skipThis) {
return callback();
}
db.query(query, callback);
}, callback);

如果 bigCollection 太大,那么在进入循环之前就会溢出。

关于javascript - 如何从 Node.js 中的异步循环返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11559523/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com