1、pomise
- promise,异步编程的解决方案,是一个构造函数,本身有all,reject,resolve方法,原型上有then,catch方法
- promise有三种状态pending、fulled、reject
- 一旦状态改变,就不会再变,任何时候都可以得到这个结果
- 当使用promise.then()的链式调用时,可以在最后指定失败的回调,前面出了任何异常,都会传到最后的失败回调中处理
2、async,await
- await中如果抛出异常,我们可以在async中捕获异常并处理,如果抛出异常,则async在await抛出异常之后的代码将无法执行
- await只阻塞当前作用域,即函数执行到await那一行时,当前作用域下还未执行所有代码都等到await异步任务执行完毕之后再执行,而不会影响其他作用域函数的执
- async就是Promise对象的语法糖,async function a 相当于Promise.resolve(function a)