function pro1() {
return new Promise((resolve, reject) => {
reject('pro1 log')
})
}
function pro2() {
return new Promise((resolve, reject) => {
resolve('pro2 log')
})
}
promise 一个接着一个调用
pro1()
.then((res) => {
console.log(res)
return pro2()
})
.then((res) => {
console.log(res)
})
promise 统一返回 有一个 失败 则 不执行
Promise.all([pro1(), pro2()]).then((values) => {
console.log(values)
})
promise 统一返回 但 不依赖成功 失败关系
Promise.allSettled([pro1(), pro2()]).then((results) => {
results.forEach((item) => {
console.log(item)
})
})
promise 统一返回 只返回成功的
Promise.any([pro1(), pro2()]).then((values) => {
console.log(values)
})
所有 promise 谁先返回 就先执行谁
Promise.race([pro1(), pro2()]).then((value) => {
console.log(value)
})