如何实现 Promise.race
Issue 欢迎在 Gtihub Issue 中回答此问题: Issue 314 (opens in a new tab)
Author 回答者: codelou (opens in a new tab)
Promise.race = function (promises) { return new Promise((resolve, reject) => { promises.forEach((p,index) => { Promise.resolve(p).then( value => {resolve(value)}, reason => { reject(reason) } ) }) }) }
Author 回答者: hwb2017 (opens in a new tab)
Promise.race = (promiseArray) => {
return new Promise((resolve, reject) => {
promiseArray.forEach((item) => {
Promise.resolve(item).then(
(val) => {
resolve(val);
},
(reason) => {
reject(reason);
},
);
});
});
};