then之后的返回值的状态 resolved,如果遇到错误,状态会变成reject
var p = Promise.resolve(100).then((res)=>{
console.log(res)
throw "err"
})
console.log(p)
then-throw
then之后的返回值的状态 resolved,如果遇到错误,状态会变成reject
Tips: then只能触发promise—>resolved的状态
var p = Promise.resolve(100).then((res) => {
console.log(res)
throw "err"
})
p.then(()=>{
console.log(200)
})
then-thow
then之后的Promise返回值的状态 resolved,如果遇到错误,状态会变成reject
Tips: then只能触发promise—>resolved的状态
var p = Promise.resolve(100).then((res) => {
console.log(res)
throw "err"
})
p.then(()=>{
console.log(200)
}).catch(err=>{
console.log(err)
})
catch-throw
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)
})
catch的返回值 Promise的状态,正常情况下是resolved,如果有错误,那么状态是rejected
var p = Promise.reject(100).catch(res=>{
console.log(res)
throw "err"
})
console.log(p)
async-try
在async-await中可以使用try-catch语句去捕获异常
Promise.reject(“err”).catch()
(async ()=>{
var p = Promise.reject("err");
try{
let res = await p;
console.log(res)
}catch(err){
console.log(err)
}
})();