首先我们回顾一下javascript异步的发展历程
async/await语法:当前最常用的异步语法,nodejs koa2 完全使用该语法
将一个函数当做参数传到另一个函数里,当那个函数执行完后再执行传进去嘚这个函数;这个过程就叫做回调。
promise 对象用于一个异步操作的最终完成(或最终失败)及其结果的表示
简单地说就是处理一个异步请求。我们经常会做些断言如果我赢了你就嫁给我,如果输了我就嫁给你之类的断言
这就是promise的中文含义:断言,一个成功一个失败。
举個例子方便大家理解:
promise构造函数的参数是一个函数,我们把它称为处理器函数
处理器函数接收两个函数reslove和reject作为其参数,当异步操作顺利执行则执行reslove函数, 当异步操作中发生异常时则执行reject函数。
await会暂停当前async的执行await会阻塞代码的执行,直到await后的表达式处理完成代码才能繼续往下执行。
await后的表达式既可以是一个Promise对象也可以是任何要等待的值。