第一种写法
new Promise((resolve,reject)=>{
setTimeout(()=>{
resolve("第一步异步打印")
},1000)
}).then(data=>{
console.log(data)
return new Promise(resolve=>{
resolve(data+"======第二步打印")
})
}).then(data=>{
console.log(data)
return new Promise(resolve=>{
resolve(data+"===第三步打印")
})
}).then(data=>{
console.log(data)
}).catch(err=>{
console.log(err)
})
第二种写法
new Promise((resolve,reject)=>{
setTimeout(()=>{
resolve("第一步异步打印")
},1000)
}).then(data=>{
return Promise.resolve(data+"======第二步打印")
}).then(data=>{
return Promise.resolve(data+"===第三步打印")
}).then(data=>{
console.log(data)
}).catch(err=>{
console.log(err)
})
第三种写法
new Promise((resolve,reject)=>{
setTimeout(()=>{
resolve("第一步异步打印")
},1000)
}).then(data=>{
return data+"======第二步打印"
}).then(data=>{
return data+"===第三步打印"
}).then(data=>{
console.log(data)
}).catch(err=>{
console.log(err)
})
Promise.all的用法
Promise.all([
new Promise((resolve,reject)=>{
resolve({name:"liuxiaobin",age:80})
}),
new Promise((resolve,reject)=>{
resolve({name:"zhangsan",age:80})
})
]
).then(res=>{
console.log(res)
})