阅读了很多JavaScript事件循环教程,我看到不同的术语来识别队列存储消息,当调用堆栈为空时,它们准备好由事件循环获取:
我找不到标准术语来识别这个。
甚至MDN似乎在the Event Loop page上混淆了,因为它首先称之为队列,然后说 Message Queue 但是在标签中我看到事件队列
循环的这一部分是在某个地方详细定义的,还是只是一个没有“固定”名称的实现细节?
答案 0 :(得分:4)
好问题,我也是使用适当术语的倡导者。
队列,消息队列和事件队列指的是相同的构造(事件循环队列)。此构造具有在事件循环中触发的回调。
有趣的是,作业队列和事件循环队列有两个不同的队列。作业队列专门用于承诺。作业队列的优先级高于事件循环队列的高,因此如果两个队列中都有可用的回调,则作业队列中的回调将首先放在堆栈中。
希望这能回答你的问题。