如何解决这个异步问题? (使用node.js)
promise是遍历列表,每次迭代都会调用多个异步函数。我怎么知道所有异步函数何时完成,以便我可以解决这个承诺?
我发现的所有内容都是使用效率不高的setTimeout()
。
以下是我的代码的简化示例:
function myFunction(parameter){
return new Promise(function (resolve, reject) {
var resultToReturn = []
_.each(list, function(el){
doSomethingAsync(el, function(result){
resultToReturn.push(result)
});
doSomethingElseAsync(el, function(result){
resultToReturn.push(result)
});
});
// How to call this ⬋ only when all async functions are finished ?
resolve(resultToReturn)
});
}
myFunction(IAmAParameter).then(function(resultFromPromise){
console.log(resultFromPromise);
});
我知道这种问题已被多次提出,但答案过于具体,在这种情况下不相关。
实施例。 :