微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

promise

 

1为什么需要promise:

ajax请求id,id请求用户名用户名获取email

  产生回调地狱:回调函数中嵌套回调

Promise解决了回调地狱

 

2promise使用。

promise是一个构造函数,通过new关键字实例化对象。。

 语法:
 1 new promise()

promise函数接受参数。(一个函数一个函数作为,参数。 ()=>{} 

参数函数接受参数。

    resolve,reject。

 

2 promise 实例有两个属性

 state:状态。

 result:结果。

 

const p =new Promise( ( resolve, reject) => { })

1) promise对象的状态:(ajax:准备,成功了,失败了,)

1 pending 装备

2 fulfill:成功。完成

3 rejected:失败

 

2) 状态的改变:

通过调用reslove()和reject()改变当前的promise 的对象状态。

 

resolve();promise对象的状态 改成fulfilled

reject();promise对象的状态 改成 rejected;

promise状态改变是 一致性的。

 

3)promise的结果。

 

 

3 p对象 的方法

promise函数里面有3个方法

then方法

参数:1 是一个函数,(成功的时候执行)2还是一个函数。(失败的时候执行。)

返回值:是一个promise对象。

p.then( ()=>{

console.log(‘成功时候调用。’)//resolve

},()=>{

console.log(‘失败的时候调用’); //reject

} )

console.log(p);

then方法的参数函数中,通过promise对象结果。

then方法返回一个promise实例。状态,pending。

pending。 fulfilled。

 

链式操作: new  Promise((resolve,reject)=>{}).then().then()

then 方法,通过return 返回的promise改为fullfiled。

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐