我经常发现自己编写函数来处理一系列项目:
- 一个异步函数并行运行多次,每个函数使用数组的不同项作为其参数
- 所有功能完成后触发的计数器
例如:
function getThings(callback){
thingsLeftToCheck = things.length;
things.forEach(function(thing){
thing.refresh(function(){
thingsLeftToCheck--;
if ( ! thingsLeftToCheck ) {
callback();
}
});
})
}
我经常将Caolan 的异步库用于其他工作流样式的任务,但我似乎找不到与此工作流对应的东西。例如,async.parallel 是关于并行运行许多不同的函数,而我想要的是使用不同的参数运行相同的函数:
async 是否提供类似的东西?