當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JavaScript Promise.race()用法及代碼示例


Promise.race()方法返回可實現或可拒絕的諾言,一旦可迭代的諾言中的一個諾言實現或拒絕,其價值或原因即為該諾言。

用法:

Promise.race(iterable);

參數:

  • iterable:可迭代對象,例如Array,Map,String等。

範例1:

Javascript

<script> 
const promise1 = new Promise((resolve, reject) => { 
  setTimeout(resolve, 600, "one"); 
}); 
  
const promise2 = new Promise((resolve, reject) => { 
  setTimeout(resolve, 200, "two"); 
}); 
  
Promise.race([promise1, promise2]).then((value) => { 
  console.log(value); 
}); 
</script>

輸出:由於promise2更快,因此可以打印兩個。

two

範例2:

Javascript

<script> 
const promise1 = new Promise((resolve, reject) => { 
  setTimeout(() => resolve("five"), 500); 
}); 
  
const promise2 = new Promise((resolve, reject) => { 
  setTimeout(() => reject(new Error("six")), 100); 
}); 
  
Promise.race([promise1, promise2]).then((value) => { 
  console.log(value); 
}); 
<script>

輸出:



由於promise2比promise1快,因此它拒絕並且不打印任何內容。

支持的瀏覽器:

  • 穀歌瀏覽器
  • IE瀏覽器
  • Firefox
  • 蘋果Safari
  • Opera

相關用法


注:本文由純淨天空篩選整理自mihir0699大神的英文原創作品 JavaScript Promise.race() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。