async await
async函数返回值 📑结论:async函数在抛出返回值时,会根据返回值类型开启不同数目的微任务 return结果值:非thenable、非promise(不等待) return结果值:thenable(等待 1个then的时间) return结果值:promise(等待 2个then的时间) await右值类型区别 接非 thenable 类型,会立即向微任务队列添加一个微任务then,但不需等待 接 thenable 类型,需要等待一个 then 的时间之后执行 接Promise类型(有确定的返回值),会立即向微任务队列添加一个微任务then,但不需等待 TC 39 对await 后面是 promise 的情况如何处理进行了一次修改,移除了额外的两个微任务,在早期版本,依然会等待两个 then 的时间
async
函数返回值
-
📑结论:
async
函数在抛出返回值时,会根据返回值类型开启不同数目的微任务 - return结果值:非
thenable
、非promise
(不等待) - return结果值:
thenable
(等待 1个then
的时间) - return结果值:
promise
(等待 2个then
的时间)
await
右值类型区别
-
接非
thenable
类型,会立即向微任务队列添加一个微任务then
,但不需等待 -
接
thenable
类型,需要等待一个then
的时间之后执行 -
接
Promise
类型(有确定的返回值),会立即向微任务队列添加一个微任务then
,但不需等待 - TC 39 对
await
后面是promise
的情况如何处理进行了一次修改,移除了额外的两个微任务,在早期版本,依然会等待两个then
的时间
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通