js foreach中调用很多个promise 如何等待循环结束再执行下面的代码
在 JavaScript 中,可以使用 Promise.all() 方法来等待多个 Promise 对象全部完成后再执行下面的代码。下面是一个示例代码:
const promises = [];
// 循环中调用多个 Promise 对象
array.forEach(item => {
promises.push(someAsyncFunction(item));
});
// 使用 Promise.all() 等待所有 Promise 对象完成
Promise.all(promises)
.then(results => {
// 所有 Promise 对象完成后执行的代码
console.log(results);
// 在这里执行下面的代码
})
.catch(error => {
// 处理错误
console.error(error);
});
在上面的示例中,array.forEach() 方法用于遍历数组,每次循环都会调用 someAsyncFunction(item) 返回一个 Promise 对象,并将这些 Promise 对象放入 promises 数组中。然后使用 Promise.all() 方法来等待所有的 Promise 对象完成,then() 方法中的代码会在所有 Promise 对象完成后执行。如果发生错误,可以使用 catch() 方法来处理错误
原文地址: https://www.cveoy.top/t/topic/iBnB 著作权归作者所有。请勿转载和采集!