Promise.race() 方法返回一个 Promise,一旦传入的可迭代对象中的任何一个 Promise 解决或拒绝,就会返回一个解决或拒绝的 Promise。
如果你的 Promise.race() 实现不起作用,可能有以下几个原因:
以下是一个示例,展示了如何正确使用 Promise.race() 方法:
const promise1 = new Promise((resolve, reject) => {
setTimeout(() => resolve('Promise 1 resolved'), 1000);
});
const promise2 = new Promise((resolve, reject) => {
setTimeout(() => resolve('Promise 2 resolved'), 2000);
});
const promise3 = new Promise((resolve, reject) => {
setTimeout(() => reject(new Error('Promise 3 rejected')), 1500);
});
Promise.race([promise1, promise2, promise3])
.then(result => console.log(result))
.catch(error => console.error(error));
在上面的示例中,Promise.race() 将返回第一个解决或拒绝的 Promise 的结果。如果 promise1 先解决,那么结果将是 'Promise 1 resolved'。如果 promise3 先拒绝,那么结果将是一个 Error 对象。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云