对于包含异步函数的循环。所有迭代完成后如何继续

时间:2014-03-02 20:07:36

标签: javascript loops for-loop asynchronous

我有一系列物品。我想对所有这些人称之为异步功能。当我想要调用其他功能的所有项目完成工作时。我不能使用任何外部库。

//array
var items;

for ( var i in items){
// function doAsync supports callback
items[i].doAsync(function callback(){...});
}

我这样做了,但我不确定这是否是一个安全的解决方案:

var items;
var loopsFinished = 0;
for (var i in items) {
    items[i].doAsync(function callback() {
             ...
        loopsFinished++;
        if (loopsFinished == items.length) {
            otherFunction();
        }
    });
}

0 个答案:

没有答案