JS 引擎执行机制
JS
- JS 是单线程语音
- JS 的 Event Loop 是 JS 的执行机制。类似于 Android Handler 消息分发机制
JS 单线程
- 技术的出现都跟现实世界里的应用场景密切相关
- JS 单线程
- JS 最初被设计用在浏览器中,相当于在 UI 线程,设计成多线程就涉及到同步的问题,很复杂,假如不同步的话, UI 线程就不安全。所以设计成了单线程
- JS 为什么需要异步
- JS 因为是单线程的,可以在 IO 等操作,但是因为是耗时操作,所以会出现卡死的情况,所以为了不影响用户体验,所以需要设计成异步
- JS 单线程如何实现异步
- JS 通过事件循环(Event Loop),实现异步,类似于 Android Handler , Looer , MessageQueue 机制
宏任务和微任务
- 宏任务:包括整体代码 script,setTimeout, setInterval
- 微任务:Promise, process.nextTick
直面挑战,躬身入局