1缨称、Promise.prototype.finally()方法用于指定不管 Promise 對(duì)象最后狀態(tài)如何祝迂,都會(huì)執(zhí)行的操作
2、Promise.all([p1, p2, p3])方法
1)只有p1型雳、p2、p3的狀態(tài)都變成fulfilled沿量,p的狀態(tài)才會(huì)變成fulfilled冤荆,此時(shí)p1、p2佛掖、p3的返回值組成一個(gè)數(shù)組涌庭,傳遞給p的回調(diào)函數(shù)。
2)只要p1坐榆、p2、p3之中有一個(gè)被rejected匹中,p的狀態(tài)就變成rejected豪诲,此時(shí)第一個(gè)被reject的實(shí)例的返回值,會(huì)傳遞給p的回調(diào)函數(shù)服赎。
3交播、Promise.race([p1, p2, p3])
只要p1、p2秦士、p3之中有一個(gè)實(shí)例率先改變狀態(tài),p的狀態(tài)就跟著改變提针。那個(gè)率先改變的 Promise 實(shí)例的返回值,就傳遞給p的回調(diào)函數(shù)
4辐脖、Promise.allSettled([p1, p2, p3])?不關(guān)心異步操作的結(jié)果揖曾,只關(guān)心這些操作有沒(méi)有結(jié)束亥啦,返回一個(gè)對(duì)象數(shù)組,每個(gè)對(duì)象都有status屬性翔脱,該屬性的值只可能是字符串fulfilled或字符串rejected。fulfilled時(shí)错妖,對(duì)象有value屬性疚沐,值為接口結(jié)果;rejected時(shí)有reason屬性痴施,值-1究流,對(duì)應(yīng)兩種狀態(tài)的返回值
5、Promise.any([p1, p2, p3])方法
其中只要有一個(gè)變成fulfilled芬探,Promise.any()返回的 Promise 對(duì)象就變成fulfilled。如果所有三個(gè)操作都變成rejected哩簿,那么await命令就會(huì)拋出錯(cuò)誤