等待.forEach()完成的最佳方法

有时我需要等待一种.forEach()方法完成,主要是在“加载程序”功能上。这是我这样做的方式:

$q.when(array.forEach(function(item){ 

//iterate on something

})).then(function(){

//continue with processing

});

我忍不住觉得这不是等待a .forEach()完成的最佳方法。做这个的最好方式是什么?

回答:

如果内没有 代码forEachforEach则不是异步代码,例如以下代码:

array.forEach(function(item){ 

//iterate on something

});

alert("Foreach DONE !");

forEach完成后,您将看到警报。

否则(您内部有异步的东西),可以将forEach循环包装在Promise中:

var bar = new Promise((resolve, reject) => {

foo.forEach((value, index, array) => {

console.log(value);

if (index === array.length -1) resolve();

});

});

bar.then(() => {

console.log('All done!');

});

信用:@ rolando-benjamin-vaz-ferreira

以上是 等待.forEach()完成的最佳方法 的全部内容, 来源链接: utcz.com/qa/433610.html

回到顶部