Promise.any() 方法與 JavaScript 中的 Promise.race() 方法有什麼區別?


在本文中,你將瞭解 Promise.any() 方法與 JavaScript 中的 Promise.race() 方法之間的差別。

javascript 中的 Promise.any() 方法是一種 promise 併發方法。當第一個任務需要完成時,它非常有用。

javascript 中的 Promise.race() 方法是一種 promise 併發方法。當第一個非同步任務需要完成,但不在乎其最終狀態(即它可能成功或失敗)時,它非常 hữu用。

示例 1

在此示例中,我們來看看 Promise.any() 方法如何運作

console.log("Defining three promise values: promise1, promise2 and promise3");
const promise1 = Promise.resolve(1);
const promise2 = new Promise((resolve, reject) => {
   setTimeout(resolve, 2 , 'Promise Two');
});
const promise3 = 3;

console.log("
Running Promise.any method on all the three promise values") Promise.any([promise1, promise2, promise3]).then((values) => console.log(values));

說明

  • 步驟 1 − 定義三個 promise 值,分別為 promise1、promise2、promise3,併為其新增值。

  • 步驟 2 − 對所有 promise 值執行 Promise.any() 方法。

  • 步驟 3 − 顯示 promise 值作為結果。

示例 2

在此示例中,我們來看看 Promise.race() 方法如何運作

console.log("Defining three promise values: promise1, promise2 and promise3");
const promise1 = Promise.resolve(Resolving first async promise);
const promise2 = new Promise((resolve, reject) => {
   setTimeout(resolve, 2 , 'Promise Two');
});
const promise3 = 3;

console.log("
Running Promise.race method on all the three promise values") Promise.race([promise1, promise2, promise3]).then((values) => console.log(values));

說明

  • 步驟 1 − 定義三個 promise 值,分別為 promise1、promise2、promise3,併為其新增值。

  • 步驟 2 − 對所有 promise 值執行 Promise.race() 方法。

  • 步驟 3 − 顯示 promise 值作為結果。

更新日期:2023 年 2 月 16 日

66 次瀏覽

開啟 職業生涯

完成課程以獲得認證

開始
廣告
© . All rights reserved.