async做了什么
- async修饰的函数返回一个promise
- 当 async 函数返回一个值时,Promise 的 resolve 方法负责传递这个值
- 当 async 函数抛出异常时,Promise 的 reject 方法会传递这个异常值
await函数做了什么
- await 后的值 v 会被转换为 Promise
- 即使 v 是一个已经 fulfilled 的 Promise,还是会新建一个 Promise,并在这个新 Promise 中 resolve(v)
- await v 后续的代码的执行类似于传入 then() 中的回调
网友评论