Promise
resolve:
new Promise((resolve, reject) => {
setTimeout(() => {
resolve({
code: 200
})
}, 500)
}).then(res => {
console.log(res.code)
})
reject:
new Promise((resolve, reject) => {
setTimeout(() => {
reject({
code: 400
})
}, 500)
}).then(res => {
console.log(res.code)
}, err => {
console.log(err.code)
})
catch:
new Promise((resolve, reject) => {
setTimeout(() => {
reject({ code: 400 })
}, 500)
}).catch((err) => {
console.log(err.code)
})
resolve和catch:
new Promise((resolve, reject) => {
setTimeout(() => {
if (Math.random() > 0.5) {
resolve({ code: 200 })
} else {
reject({ code: 400 })
}
}, 500)
})
.then((res) => {
console.log(res.code)
})
.catch((err) => {
console.log(err.code)
})
throw:
new Promise((resolve, reject) => {
throw new Error("错误")
}).catch((err) => {
console.log(err.message)
})
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步