使用https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/EventLoop中的视觉表示:
setImmediate()
和nextTick()
之间的区别之一是setImmediate()
将代码置于堆栈(当前运行代码)与nextTick()
之间将代码置于下一个消息(队列)?
答案 0 :(得分:1)
没有。这两个方法都是异步的,这意味着回调进入队列并且堆栈保持不变(就像它立即被调用一样)。
但是,setImmediate
和nextTick
确实使用不同的队列。它们有不同的执行周期,nextTick
回调将在第一个setImmediate
- 计划的回调之前被调用。有关详细信息,另请参阅setImmediate vs. nextTick。