Promise.all
介绍:Pormise.all接收一个Promise对象数组作为参数,当且仅当数组中的所有Promise对象都resolve时,Promise.all才会resolve并返回一个包含所有成功结果的数组,否则第一个reject的Promise就会导致Promise.all被reject并返回第一个reject的reason
代码示例
jsconst promises = [ fetchData(), fetchData2(), fetchData3() ] Promise.all(promises) .then(results => { // 处理所有Promise都成功的情况 }) .catch(error => { // 处理任一Promise失败的情况 })
Promise.allSettled
介绍:Promise.allSettled是一个新的Promise方法,它不会因为某个Promise被reject而失败,而是会等待所有Promise完成(无论是resolve还是reject)
代码示例
jsconst promises = [ fetchData(), fetchData2(), fetchData3() ] Promise.allSettled(promises) .then(results => { // 处理所有Promise都完成(成功或失败)的情况 })
参考文档