Promise.all()方方详解

简介: Promise.all()方方详解

1.Promise.all()方方详解


Promise.all,只有所有的Promise成功,才能够算作成功,只要有一个失败了,就直接失败;


它包含一个参数,这个参数是指包含多个Promise的数组;


如果有一个失败,那么返回第一个失败的Promise对象作为结果;


也就是说,如果有两个失败了,返回第一个失败的Promise对象作为失败的结果。


如果他们三个都是成功的,那么all方法的返回的结果;是他们三个Promise对象成功结果的组成的一个数组;


2.都是成功


let p1 = new Promise((resolve, reject) => {
    resolve('ok1')
})
let p2 = new Promise((resolve, reject) => {
    resolve('ok2')
})
let p3 = new Promise((resolve, reject) => {
    resolve('ok3')
})
const result = Promise.all([p1, p2, p3]);
console.log(result)


1425695-20210417174916298-716693759.png


3.有一个Promise失败


let p1 = new Promise((resolve, reject) => {
    resolve('ok1')
})
let p2 = new Promise((resolve, reject) => {
    reject('ok2')
})
let p3 = new Promise((resolve, reject) => {
    resolve('ok3')
})
const result = Promise.all([p1, p2, p3]);
console.log(result)


1425695-20210417175018945-787581750.png

promise.all在实际场景上的运用


由于promise在所有的结果都是成功;


才算做成功


我们可以利用他的这个特征


去做全部成功才可以去完成某一个逻辑操作的业务场景



相关文章
|
1月前
|
存储 前端开发 算法
promise.all是怎实现的?
promise.all是怎实现的?
25 0
|
1月前
|
前端开发 JavaScript
掌握 Promise.all:优雅处理多个异步操作
掌握 Promise.all:优雅处理多个异步操作
|
1月前
|
前端开发 JavaScript API
停止在 JavaScript 中使用 Promise.all()
停止在 JavaScript 中使用 Promise.all()
41 0
|
10月前
Promise.all和Promise.race的区别和使用
比如当数组里的P1,P2都执行完成时,页面才显示。 值得注意的是,返回的数组结果顺序不会改变,即使P2的返回要比P1的返回快,顺序依然是P1,P2 Promise.all成功返回成功数组, 失败返回失败数据,一但失败就不会继续往下走
|
9月前
|
前端开发 API 数据库
Promise.all API 的出错处理
Promise.all API 的出错处理
|
前端开发
前端学习案例23-promise.all和promise.race
前端学习案例23-promise.all和promise.race
56 0
前端学习案例23-promise.all和promise.race
|
前端开发
前端学习案例24-promise.all和promise.race之2
前端学习案例24-promise.all和promise.race之2
65 0
前端学习案例24-promise.all和promise.race之2
|
前端开发
前端学习案例1-promise之promise.all
前端学习案例1-promise之promise.all
54 0
前端学习案例1-promise之promise.all
|
前端开发
Promise.all和promise.race的应用场景举例
Promise.all和promise.race的应用场景举例
165 0
|
前端开发 JavaScript
Promise.all等待所有Promise执行完成
Promise.all等待所有Promise执行完成
350 0