1promise
手撕还是有点困难
先掌握它的方法,
在记得它的规范,
从规范出发手xPromise
1 then promise
const promise2 = new Promise((resolve, reject) => {
setTimeout(()=>{
console.log(1)
resolve(3)
console.log(2)
})
})
promise2.then((res) => {
console.log(res)
}).then(res=>{
console.log(res);})
console.log(4)
//4 123 undefined
const promise2 = new Promise((resolve, reject) => {
console.log(1)
resolve(3)
console.log(2)
})
promise2.then((res) => {
console.log(res)
}).then(res=>{
console.log(res);})
console.log(4)
//12 4 3 undefined
2promise all race
Promise.all([p1, p2]).then((result) => {
console.log(result)
}).catch((error) => {
console.log(error)
})
//['success0', 'success1']
Promise.all([p1,p3,p2]).then((result) => {
console.log(result)
}).catch((error) => {
console.log(error)
})//'fail'
Promise.race([p1,p3,p2]).then((result) => {
console.log(result)
}).catch((error) => {
console.log(error)
})//success0
//顺序
// ['success0', 'success1']
// success0
//fail