本文主要是介绍详解Promise.race()可以解决多个异步请求那个请求先返回,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Promise.race([]);接受一个参数,由promise组成的一个数组;
它的返回结果是promise对象;
它的结果和状态由什么去决定呢?
由第一个改变Promise状态的对象去决定;若是返回的是成功,那么race就是成功;若是失败,那么race就是失败
let p1 = new Promise((resolve, reject) => {
setTimeout(() => {
resolve('ok1')
}, 1000)
})
let p2 = new Promise((resolve, reject) => {
setTimeout(() => {
resolve('ok2')
}, 1300)
})
let p3 = new Promise((resolve, reject) => {
resolve('ok3')
})
const result = Promise.race([p1, p2, p3]);
console.log(result)
// 这个3个promise对象,肯定是p3先去改变promise的状态作为返回的结果
![](/upload/202104/17/202104171855215654.png)
这篇关于详解Promise.race()可以解决多个异步请求那个请求先返回的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!