在each循环中等待promise可以通过使用async/await和Promise.all来实现。下面是一个示例代码:
async function processArray(array) {
// 创建一个空数组来存储每个promise的结果
const results = [];
// 使用for...of循环遍历数组
for (const item of array) {
// 等待每个promise完成并将结果存储在results数组中
const result = await item;
results.push(result);
}
// 返回所有promise的结果
return results;
}
// 创建一个包含多个promise的数组
const promises = [
Promise.resolve('Promise 1'),
Promise.resolve('Promise 2'),
Promise.resolve('Promise 3')
];
// 调用processArray函数并等待所有promise完成
processArray(promises)
.then(results => {
console.log(results); // 打印每个promise的结果
})
.catch(error => {
console.error(error); // 处理错误
});
在上述代码中,我们定义了一个名为processArray的异步函数,它接受一个包含多个promise的数组作为参数。在每次循环中,我们使用await关键字等待每个promise完成,并将结果存储在results数组中。最后,我们使用Promise.all来等待所有promise完成,并返回结果。
这种方法可以确保在each循环中等待每个promise完成,然后再继续执行下一个循环。这对于需要按顺序处理每个promise的情况非常有用。
腾讯云相关产品和产品介绍链接地址:
请注意,以上链接仅供参考,具体产品选择应根据实际需求进行评估。
领取专属 10元无门槛券
手把手带您无忧上云