1 通过Promise.allSettled()可以接收一个数组,并且在数组里面的所有实例,全部执行完,再通过then方法或者catch方法,对数组里面的实例进行遍历与操作。
PromiseAllSettled() {
let p1 = new Promise((resolve, reject) => {
//这里是通过setTimeout仿作了一个异步背景
setTimeout(() => {
let time1 = Math.random() * 10 > 5;
console.log(time1);
if (time1) {
resolve("resolvep1");
} else {
reject("rejectp1");
}
}, 500);
});
let p2 = new Promise((resolve, reject) => {
setTimeout(() => {
let time2 = Math.random() * 10 > 5;
console.log(time2);
if (time2) {
resolve("resolvep2");
} else {
reject("rejectp2");
}
}, 1000);
});
let p = Promise.allSettled([p1, p2]).then((res) => {
console.log(res, "res");