遍历Promise可以使用async/await结合for循环来实现。以下是一个示例代码:
async function traversePromises(promises) {
for (const promise of promises) {
try {
const result = await promise;
console.log(result); // 处理Promise的返回值
} catch (error) {
console.error(error); // 处理Promise的错误
}
}
}
// 示例使用
const promises = [
Promise.resolve("Promise 1"),
Promise.resolve("Promise 2"),
Promise.reject(new Error("Promise error")),
Promise.resolve("Promise 3")
];
traversePromises(promises);
此示例中,traversePromises
函数接收一个Promise数组作为参数,并使用for循环遍历每个Promise。在每次循环中,使用await
关键字来等待Promise的解决,然后处理Promise的返回值或捕获错误。
在示例中,前两个Promise都会被成功解决并打印到控制台上,第三个Promise会被拒绝并打印错误信息,最后一个Promise会再次成功解决并打印到控制台上。
注意:由于Promise是异步操作,因此在处理Promise时需要使用await
关键字来等待Promise的解决,以确保代码按顺序执行。