JavaScript执行机制解析
2021/12/10 11:16:43
本文主要是介绍JavaScript执行机制解析,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
想要搞懂JavaScript执行机制,需要清楚下面这些知识:(以浏览器环境为例,与Node环境不同)
- 进程与线程的概念
- 浏览器原理
- 事件循环(Event-Loop),任务队列(同步任务,异步任务,微任务,宏任务)
JS为什么是单线程?
JavaScript从它诞生之初就是作为浏览器的脚本语言,主要用来处理用户交互以及操作DOM,这就决定了它只能是单线程的,否则会带来非常复杂的同步问题。
举个例子: 如果JS是多线程的,其中一个线程要修改一个DOM元素,另外一个线程想要删除这个DOM元素,这时候浏览器就不知道该听谁的。所以为了避免复杂性,从一诞生,JavaScript就被设计成单线程。
为了利用多核CPU的计算能力,HTML5提出Web Worker标准,允许JavaScript脚本创建多个线程,但是子线程完全受主线程控制,且不得操作DOM。所以,这个新标准并没有改变JavaScript单线程的本质
浏览器原理
浏览器想必都不陌生,并且浏览器是多进程的。
浏览器组成部分
- 用户界面:包括地址栏,前进/后退/刷新/书签
这篇关于JavaScript执行机制解析的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-02Java微服务系统项目实战入门教程
- 2024-11-02Java微服务项目实战:新手入门指南
- 2024-11-02Java项目实战:新手入门教程
- 2024-11-02Java小程序项目实战:从入门到简单应用
- 2024-11-02Java支付系统项目实战入门教程
- 2024-11-02SpringCloud Alibaba项目实战:新手入门教程
- 2024-11-02Swagger项目实战:新手入门教程
- 2024-11-02UNI-APP项目实战:新手入门与初级教程
- 2024-11-02编译部署资料入门教程:一步步学会编译和部署
- 2024-11-02地图服务资料入门指南