promise

98 阅读1分钟

promise的介绍

promise 是js中进行异步【定时器,ajax】编程的新解决办法(以前异步使用回调函数)

从语法上来说:promise是个构造函数,可以实例出一个对象

    const pro = new promise()

从功能上来说: promise对象用来分份额改装一个异步操作,并可以获取其成功/失败的结果

使用promise编写的一个小案例

将异步代码放到promise中,当成功时调用resolve(),失败时调用reject() 最后调用then(),在then中编写resolve()、reject()的逻辑 image.png

promise封装ajax

image.png

image.png

util.promisify(将普通函数转换成promise)

image.png

promise的基本流程

image.png

promise 内部函数是同步调用的

image.png 输出的结果是:

image.png

promise的方法属性

image.png

image.png

全成功返回结果:

image.png 有一个失败,则返回结果:

image.png

image.png

promise的几个关键问题

image.png image.png

image.png

image.png

image.png

image.png

image.png

image.png 输出结果:

image.png

image.png

image.png

image.png

image.png

手写promise

image.png

image.png

image.png

image.png