Async 函数说明
async 函数说明 内部有异步操作,当函数执行的时候,一旦遇到 awaite 就会先返回,等到异步操作完成,再接着执行函数体内后面的语句。
await 表示 紧跟在后面的表达式需要等待结果
async 函数 返回 Promise 对象,可以使用 then 添加回调函数,async 函数内部错误,导致返回的 Promise 对象为 reject 状态,会被 catch 函数处理,如果在 async 函数中直接返回一个直接量,async 函数会用 Promise.resolve()封装成 Promise 对象
只有 async 函数内部所有的异步函数处理完成,才会执行 then 指定的回调函数(除非内部出现错误或者 return 值)
正常情况下,await 后面任何一个 await 语句后面的 Promise 对象变为 reject 状态,那么整个 async 函数都会中断执行。
await 是个运算符,用于组成表达式,await 表达式的运算结果取决于它等的东西。
如果它等到的不是一个 Promise 对象,那 await 表达式的运算结果就是它等到的东西。
如果它等到的是一个 Promise 对象,await 就忙起来了,它会阻塞后面的代码,等着 Promise 对象 resolve,然后得到 resolve 的值,作为 await 表达式的运算结果。
正常情况下,await 命令后面是一个 Promise 对象,返回该对象的结果。如果不是 Promise 对象,就直接返回对应的值。
await 【xxx()】 为 awaite 表达式, xxx()函数如果返回一个 Promise 对象,该 Promise 对象 resolve 出来的值为 await 表达式的结果
如果 await 后面跟着的表达式不是返回 Promise 对象,该表达式的结果就是 await 表达式的结果
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论