then和catch返回值
1.都是会返回Promise
2.正常情况下resolve,遇到错误,rejected
var p = Promise.resolve(100).then(res=>{console.log(res)throw "err"})p.then(()=>{console.log(200)}).catch(err=>{console.log(err)}).then(()=>{console.log(300)})
异常的处理
(async () => {
var p = Promise.reject("err");
try {
let res = await p;
console.log(res)
}catch(err){
console.log(err)
}
})()
Promise.reject("err").catch((err)=>{
console.log(err)
})
状态
pending
resolved
rejected
var p = new Promise((resolve,reject)=>{
//
setTimeout(()=>{
resolve()
})
})
setTimeout(()=>{
console.log(p)
})
console.log(p)
