async和await有什么区别?

async和await
async叫异步函数。是ES2017新出的,这让异步操作变得更简单了。本质上是Generator的语法糖,所以本质上还是
操作promise对象观察状态。
将promise方法中得generator和yield替换成async和await结合使用,也就是一个语法糖
语法糖:同样的代码效果,只用了更好的写法用法,也更用于理解,有利于编码风格的优化。比如es6的class,与之
对应的是语法盐
语法盐:通过反人类的语法,使你写代码更加痛苦。虽然也能避免写的时候出错。但是编程效率堪忧,学习门槛
高。
await之前(需要node环境)
async和await有什么区别?
用async和await
async和await有什么区别?
上述代码内部fs.readFile其实也是返回了一个promise对象,所以可以await结果
延时输出:
async和await有什么区别?
async和Generator的区别:

  1. 内置执行器:直接执行就可以,不需要next等其他方法
  2. 良好的语义。async表示异步函数,await需要等待后面的表达式结果结束。
  3. Generator返回的是Iterator对象,async返回的是promise对象。可以后续then继续操作。
    如果有其他疑问或是看法可以在评论里或投稿跟小编进行讨论,
    也可以关注微信公众号【筑梦前端】进行投稿,
    与小编一起探讨更多的编程知识。