💡
原文英文,约200词,阅读约需1分钟。
📝
内容提要
JavaScript是单线程语言,但通过浏览器的多线程和多进程能力实现异步操作。任务分为同步、微任务和宏任务,执行顺序为同步->微任务->宏任务。微任务示例包括Promise.then(),宏任务示例包括setTimeout。process.nextTick()在同步代码后、微任务前执行。
🎯
关键要点
- JavaScript是单线程语言,但可以通过浏览器的多线程和多进程能力实现异步操作。
- JavaScript任务分为三类:同步任务、微任务和宏任务,执行顺序为同步->微任务->宏任务。
- 同步代码首先执行,微任务被放入微任务队列,宏任务被放入宏任务队列,等待相应任务完成。
- 常见的微任务包括Promise.then()、Promise.catch()、new MutationObserver()和process.nextTick()。
- 常见的宏任务包括setTimeout、setInterval和requestAnimationFrame()。
- process.nextTick()既不是微任务也不是宏任务,它在同步代码后、微任务前执行。
🏷️
标签
➡️