const promise1 = new Promise(function(resolve,reject){
// resolve('aaa')
reject('bbb')
})
promise1.then(res=>{
console.log(res) // 'aaa'
}).catch(err=>{
console.log(err) // 要想走catch,也就是说不能走promise的resolve,注释掉即可
})
const promise1 = Promise.resolve(3);
const promise2 = 42;
const promise3 = new Promise(function(resolve, reject) {
setTimeout(resolve, 100, 'foo');
});
Promise.all([promise1, promise2, promise3]).then(function(values) {
console.log(values); // [3,42,'foo']
});
promise.all() //当全部调用后才能走then或者catch
const promise1 = new Promise(function(resolve, reject) {
setTimeout(resolve, 500, 'one');
});
const promise2 = new Promise(function(resolve, reject) {
setTimeout(resolve, 100, 'two');
});
Promise.race([promise1, promise2]).then(function(value) {
console.log(value); // two
});
promise.race() // 只要有一个完成就继续走then或者catch ,这里promise2的速度快,所以结果就是'two'