1.通过读取文件的例子,来对比promise,generator, async
a.promise
b.generator
c.async
语法:
async function fn() { //表示异步,这个函数里面有异步任务
let result = await xxx //表示后面结果需要等待
}
2.async特点
1.await只能放到async函数中
2.相比genrator语义化更强
3.await后面可以是promise对象,也可以是数字,字符串,布尔
4.async函数返回是一个promise对象
5.只要await语句后面promise状态变成reject,那么整个async函数会中断执行
3.如何解决async函数中抛出的错误,影响后续代码:
1. try{
}catch() {
}
2.promise本身的catch也可以