JavaScript Promise.allSettled()
定義和用法
Promise.allSettled()
方法從一組 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.allSettled([myPromise1, myPromise2]).then((results) =>
results.forEach((x) => myDisplay(x.status))
);
親自試一試
語法
Promise.allSettled(iterable)
參數
參數 |
描述 |
iterable |
Promise 的數組。 |
返回值
類型 |
描述 |
Object |
新的 Promise 對象。 |
瀏覽器支持
Promise.allSettled()
自 2020 年 3 月以來在所有現代瀏覽器中得到支持:
Chrome |
Edge |
Firefox |
Safari |
Opera |
Chrome 76 |
Edge 79 |
Firefox 71 |
Safari 13 |
Opera 63 |
2019 年 5 月 |
2019 年 11 月 |
2020 年 3 月 |
2019 年 9 月 |
2019 年 8 月 |