我想把async.each和async.series结合起来,但是我得到了意想不到的结果。
async.each([1, 2], function(item, nloop) {
async.series([
function(callback) {
console.log("1");
callback();
},
function(callback) {
console.log("2");
callback();
},
function(callback) {
console.log("3");
callback();
},
function(callback) {
nloop();
}
]);
},function(){
}); 我希望这段代码能够输出123123。相反,我得到了112233。我做错了什么?
发布于 2015-09-16 08:57:17
async.each() 将函数迭代器并行地应用于数组中的每个项。.如果您想按顺序执行,则应该使用eachSeries()。
此外,您应该在async.series(taskArray, callback)中使用最后的回调
async.eachSeries([1, 2], function(item, nextItem) {
async.series([
function(next) {
console.log("1");
next();
},
function(next) {
console.log("2");
next();
},
function(callback) {
console.log("3");
next();
}
], nextItem);
},function(){
}); https://stackoverflow.com/questions/32584499
复制相似问题