Promis

128 阅读1分钟

1、Promise对象是一个构造函数,用来生成Promise实例,,Promise身上有两个属性一个是状态 PromiseState,一个是结果PromiseResult,Promise构造函数接收两个参数,这两个参数分别是成功的 (resolve)和失败的(reject)

2、Promise是为了解决回调地狱的问题

3、Promise身上的PromiseState里面有三个状态:分别是等待(pending),成功(fulfilled),失败(rejected)

4、Promise构建出来的实例存在

一、 then()里面接收两个回调函数,第一个回调函数用来接收成功的回调函数,第二个回调函数用来接收失败的回调函数

二、 catch():用来捕获错误的回调函数

三、 finally():不管Promise最后状态如何都会执行

四、 all():Promise.all方法可以会发起并行的Promise异步操作,等所有的异步操作结束才执行then函数,all方法接收一个数组作为参数,只要其中有一个promise结果为rejected则全部失败,输出一个数组作为结果

五、race():race方法接收一个数组作为参数第一个promise结果为fulfilled则全部成功,第一个promise结果为rejected则全部失败

六、any():拿到的是第一个成功的结果

七、async:async用来修饰函数,代表函数内部可以使用await,并且返回的结果为Promise对象

八、await:await 用来修饰Promise对象,能够不使用.then方法使用Promise的PromiseResult,但是必须要有async修饰符