console.log(‘start‘)console.log(‘browser => start 6 end 7 1 2 3 4‘);console.log(‘node => start 6 end 7 1 3 5 2 4‘)// 差异点// 执行栈都是只有一个,但是浏览器只有一个任务队列;node 有6个任务队列// 浏览器一个任务队列中包括宏任务与微任务,宏任务结束立即运行微任务// node在每一个任务队列执行完成后执行微任务// process.nextTick 优先于promise执行setTimeout(() => { console.log(1) Promise.resolve(2).then(data => console.log(data))},100)setTimeout(() => { console.log(3) Promise.resolve(4).then(data => console.log(data)) process && process.nextTick(() => { console.log(5) })},100)new Promise((resolve,reject) => { console.log(6) resolve(7)}).then(data => { console.log(data)})console.log(‘end‘)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。