如何全面掌握JavaScript事件执行原理?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2212个文字,预计阅读时间需要9分钟。
目录+前言+浏览器+JavaScript+异步执行原理+浏览器中的事件循环+执行栈与任务队列+宏任务和微任务+Async/await的执行顺序+特点+示例+个人分析+前言+熟悉事件循环,理解浏览器运行机制将对我大有裨益
目录
- 前言
- 浏览器 JS 异步执行的原理
- 浏览器中的事件循环
- 执行栈与任务队列
- 宏任务和微任务
- Async/await的运行顺序
- 特点
- 示例
- 个人分析
前言
熟悉事件循环,了解浏览器运行机制将对我们理解 JavaScript 的执行过程和排查运行问题有很大帮助。以下是总结的一些浏览器事件循环的一些原理和示例。
浏览器 JS 异步执行的原理
- JS 是单线程的,也就是同一个时刻只能做一件事情,那么,为什么浏览器可以同时执行异步任务呢?
- 因为浏览器是多线程的,当 JS 需要执行异步任务时,浏览器会另外启动一个线程去执行该任务。
- 也就是说,JS 是单线程的指的是 执行JS 代码的线程只有一个,是浏览器提供的 JS 引擎线程(主线程)。浏览器中还有定时器线程和 HTTP 请求线程等,这些线程主要不是来跑 JS 代码的。
本文共计2212个文字,预计阅读时间需要9分钟。
目录+前言+浏览器+JavaScript+异步执行原理+浏览器中的事件循环+执行栈与任务队列+宏任务和微任务+Async/await的执行顺序+特点+示例+个人分析+前言+熟悉事件循环,理解浏览器运行机制将对我大有裨益
目录
- 前言
- 浏览器 JS 异步执行的原理
- 浏览器中的事件循环
- 执行栈与任务队列
- 宏任务和微任务
- Async/await的运行顺序
- 特点
- 示例
- 个人分析
前言
熟悉事件循环,了解浏览器运行机制将对我们理解 JavaScript 的执行过程和排查运行问题有很大帮助。以下是总结的一些浏览器事件循环的一些原理和示例。
浏览器 JS 异步执行的原理
- JS 是单线程的,也就是同一个时刻只能做一件事情,那么,为什么浏览器可以同时执行异步任务呢?
- 因为浏览器是多线程的,当 JS 需要执行异步任务时,浏览器会另外启动一个线程去执行该任务。
- 也就是说,JS 是单线程的指的是 执行JS 代码的线程只有一个,是浏览器提供的 JS 引擎线程(主线程)。浏览器中还有定时器线程和 HTTP 请求线程等,这些线程主要不是来跑 JS 代码的。

