Promise.all([
Promise.reject('错误消息1'),
Promise.resolve('a2')
]).then((ret) => {
console.log('看看是否执行1')
console.log(ret)
}).catch((error) => {
console.log('看看是否执行2')
console.log(error)
})
Promise.allSettled([
Promise.reject('a11'),
Promise.resolve('a12')
]).then((ret) => {
console.log(ret)
handleFun(ret.filter(el => el.status !== 'rejected'))
})
Promise.any([
new Promise((resolve, reject) => setTimeout(reject, 500, '哎呀,我被拒绝了')),
new Promise((resolve, reject) => setTimeout(resolve, 1000, '哎呀,她接受我了')),
new Promise((resolve, reject) => setTimeout(resolve, 2000, '哎呀,她也接受我了')),
])
.then(value => console.log(`输出结果: ${value}`))
.catch (err => console.log(err))
const p1 = new Promise((resolve, reject) => {
setTimeout(() => {
console.log('第一个promise被resolve');
resolve(10);
}, 1 * 1000);
});
const p2 = new Promise((resolve, reject) => {
setTimeout(() => {
console.log('第二个promise被resolve');
resolve(20);
}, 2 * 1000);
});
Promise.race([p1, p2])
.then(value => console.log(`成功: ${value}`))
.catch(error => console.log(`失败: ${error}`));
console