Promise.all
多个Promise,进行,等待全部resolve,返回全部Promise的resolve数组,注意遇到任意一个失败就返回
直接上详情图说明
这边Promise.all是将多个Promise放到一起执行,注意这里多个Promise是异步执行,意思是相互不会影响,不会等待,所以这3会打印出来,然后2,最后1,
这里的返回值是需要res才能执行成功,如果存在reject的话,就会捕获异常
异步同时进行接口调用
同步执行接口调用
allSettled
Promise.allSettled()
方法返回一个在所有给定的promise都已经fulfilled或rejected后的promise,并带有一个对象数组,每个对象表示对应的promise结果。
当您有多个彼此不依赖的异步任务成功完成时,或者您总是想知道每个promise的结果时,通常使用它
any
Promise.any()
接收一个Promise可迭代对象,只要其中的一个 promise 成功,就返回那个已经成功的 promise 。如果可迭代对象中没有一个 promise 成功(即所有的 promises 都失败/拒绝),就返回一个失败的 promise 和AggregateError类型的实例,它是 Error 的一个子类,用于把单一的错误集合在一起。本质上,这个方法和Promise.all()是相反的。
处理异常
以下是正常调用reslove
后,把1返回给 await
打印出来就是1
以下就是调用reject
抛出一个异常错误,在调用时候在catch
里面打印出来