参考 :https://nodejs.dev/learn/the-nodejs-event-loop
Message Queue : 老同志了。click event ,setTimeout,这些 就是他默默在支持,性子比较平和,别人插队他就默默等着
Job Queue / ES6 Job Queue: 新人,时髦的Promise 就是他的杰作,性子急躁,不许别人插队。
const bar = () => console.log('bar')
const baz = () => console.log('baz')
const foo = () => {
console.log('foo')
setTimeout(bar, 0)
baz()
}
foo()
terminal:
foo
baz
bar
const bar = () => console.log('bar')
const baz = () => console.log('baz')
const foo = () => {
console.log('foo')
setTimeout(bar, 0)
new Promise((resolve, reject) =>
{
console.log("before resolve")
resolve('should be right after baz, before bar')
console.log("after resolve")
}
).then(resolve => console.log(resolve))
baz()
}
foo()
terminal:
foo
before resolve
after resolve
baz
should be right after baz, before bar
bar
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix