Es6语法:Promise的使用方法

什么情况下会用到Promise?

  一般情况下是有异步操作时,使用Promise对这个异步操作进行封装

Promise的方法解析

 new -> 构造函数(1.保存了一些状态信息 2.执行传入的函数)

 在执行传入的回调函数时,会传入两个参数(resolve:处理下一步信息,reject:处理错误信息,这两个参数本身又是函数)



new Promise很明显是创建一个Promise对象 p小括号中((resolve, reject) => {})也很明显就是一个函数,而且我们这里用的是之前刚刚学习过的箭头函数。

但是resolve, reject它们是什么呢? ü我们先知道一个事实:在创建Promise时,传入的这个箭头函数是固定的(一般我们都会这样写)

resolve和reject它们两个也是函数,通常情况下,我们会根据请求数据的成功和失败来决定调用哪一个。 p成功还是失败?

如果是成功的,那么通常我们会调用resolve(messsage),这个时候,我们后续的then会被回调。 ü如果是失败的,那么通常我们会调用reject(error),这个时候,我们后续的catch会被回调。 

Promise到底是做什么的呢?


Promise三种状态


ppending:等待状态,比如正在进行网络请求,或者定时器没有到时间。

pfulfill:满足状态,当我们主动回调了resolve时,就处于该状态,并且会回调.then()

preject:拒绝状态,当我们主动回调了reject时,就处于该状态,并且会回调.catch()


©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容