JavaScript Promise.race()

定義和用法

Promise.race() 方法從一組 Promise 返回一個 Promise,當最快的 Promise 完成(解決或拒絕)時。

實例

// 創建一個 Promise
const myPromise1 = new Promise((resolve, reject) => {
  setTimeout(resolve, 200, "國王");
});
// 創建另一個 Promise
const myPromise2 = new Promise((resolve, reject) => {
  setTimeout(resolve, 100, "女王");
});
// 當最快的 Promise 完成時
Promise.race([myPromise1, myPromise2]).then((x) => {
  myDisplay(x);
});

親自試一試

語法

Promise.race(iterable)

參數

參數 描述
iterable Promise 的數組。

返回值

類型 描述
Object 新的 Promise 對象。

瀏覽器支持

Promise.race() 是 ECMAScript 6 (ES6) 的特性。

自 2017 年 6 月以來,ES6 (JavaScript 2015) 在所有現代瀏覽器中都得到支持:

Chrome Edge Firefox Safari Opera
Chrome 51 Edge 15 Firefox 54 Safari 10 Opera 38
2016 年 5 月 2017 年 4 月 2017 年 6 月 2016 年 9 月 2016 年 6 月

Promise.race() 不支持 Internet Explorer。