# async/await
- 异步回调 callback hell
- Promise then catch 链式回调,但也是基于回调函数
- async/await 是同步语法,彻底消灭回调函数
# async/await 和 promise 的关系
async/await 是消灭异步回调的终极武器
但和 promise 并不互斥
反而,两者相辅相成
执行async函数,返回的是一个Promise对象
await相当于Promise的
then
- 注意这里不会接收 rejected
- 要做好 try catch
try……catch 可捕获异常,代替了Promise 的catch
# 异步的本质
- async/await 是消灭异步回调的终极武器
- JS 还是单线程,还得是有异步,还得是基于 event loop
- async/await 只是一个语法糖,很香!
async function async1() {
console.log('async1 start') // 2
await async2()
console.log('async end') // 5
}
async function async2() {
console.log('async2') // 3
}
console.log('script start') // 1
async1()
console.log('script end') // 4
# for of
- for in 以及(forEach for ) 是常规的同步遍历
- for of 常用于异步的遍历
# 总结 async / await 总结
- async/await 解决了异步回调,是一个很香的语法糖
- async/await 和 Promise 的关系,重要
- for ... of 的使用
← promise 进阶 微任务&宏任务 →