ES6学习系列课第二课 02课 promise

这个是es6中新增的一个使用比较多的对象,解决了之前JavaScript中的回调地狱的问题, 以下是我对promise理解,理解清楚了才可以更好的使用
1,let promise=new Promise (function(resolve,reject){
if 异步函数执行成功
resolve(res)
else 异步函数执行失败
reject(res)
});
从这里可以看出Promise是一个构造函数,new一个promise出来,就是创建一个promise实例,里面有一个执行器函数参数,执行器里面有两个参数,等到这个异步处理成功或者失败之后就可以通过这个处理状态,将参数传递给下一步了,即可以调用then方法
2,理解这个then方法,可以当做是在promise这个类下面的原型prototype上存在then方法属性,只要实例了一个promise实例出来,就都可以调用这个实例下面的then方法
3,将promise理解成一个异步对象,它包含两种状态,执行成功或者失败,无论成功或者失败都可以利用内部函数(resolve,reject)将参数传递出来,但是return出来的却不是一个确定的值,只是两个状态,根据不同的状态再来决定下一步是怎么做。
这里来理解这个promise对象就会觉得promise没有看起来那么抽象,它也变得比较简单和易用。
下面就我在微信小程序中的调用实例来说明:
this.getuserinfo().then (
wx.request({
拿到用户信息后就查询一遍用户附近的4s店,查点操作
})
)
getuserinfo:function(){
return new promise(function(){
wx.request({
获取用户信息操作,异步Ajax操作
If 获取用户信息成功
resolve(res)
else
reject(res)
})
)

发布了30 篇原创文章 · 获赞 7 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章