当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。