网站开发视频播放网站,WordPress简洁主题单栏,商城网站建设价位,成都最好的网站建设公司定义
Promise对象用于表示(管理)一个异步操作的最终完成#xff08;或失败#xff09;及其结果值。
好处#xff1a;1#xff09;成功和失败状态#xff0c;可以关联对应处理程序 2#xff09;了解axios函数内部运作机制 3#xff09;能解决回调函数地狱问题 语法或失败及其结果值。
好处1成功和失败状态可以关联对应处理程序 2了解axios函数内部运作机制 3能解决回调函数地狱问题 语法
//1.创建Promise对象
const pnew Promise((resolve,reject){//2.执行异步任务-并传递结果//成功调用resolve(值) 触发then()执行//失败调用reject(值) 触发catch()执行
})
//3.接收结果
p.then(result{//成功
}).catch(error{//失败
})
new Error(错误信息)创建一个错误对象
三种状态
概念一个Promise对象必然处于以下几种状态之一
1待定pending初始状态既没有被兑现也没有被拒绝
2已兑现fulfilled意味着操作成功完成
3已拒绝rejected意味着操作失败 注意Promise对象一旦被兑现/拒绝就是已敲定了状态无法再被改变
Promise对象创建时Promise对象里的代码就会在执行了
//创建Promise对象
const pnew Promise((resolve,reject){//执行XHR异步代码获取省份列表const xhr new XMLHttpRequest()xhr.open(请求方式,URL)xhr.addEventListner(loadend,(){//响应状态码为2xx都是成功响应if(xhr.status 200 xhr.status 300){resolve(JSON.parse(xhr.response))}else{reject(new Error(xhr.response))}})xhr.send()
})//关联成功或失败函数做后续处理
p.then(result{//成功
}).catch(error{//错误对象要用console.dir详细打印console.dir(error)
})