2、JS 为什么是单线程?

结论:故意将 JS 设计成单线程并阻塞渲染。

当时为了增强网页交互,所以才创造了 JS,最初提供一些简单动画 + 基本的表格提交功能。

既然涉及网页交互,那就不得不考虑它与页面渲染的关系。

那为什么不能是多线程呢?
假设 JS 被设计为多线程,那如果存在多段代码更改同一个 DOM,这就没法确定先用哪段代码

那什么要阻塞渲染呢?
因为 JS 具有操作 DOM 的能力,如果在执行 JS 时,页面也同时进行渲染,这就没法确定先用 JS 的还是 HTML/CSS 的

所以故意将 JS 设计成单线程并阻塞渲染。


2、JS 为什么是单线程?
https://mrhzq.github.io/职业上一二事/前端面试/每日知识卡片/2、JS 为什么是单线程?/
作者
黄智强
发布于
2024年2月3日
许可协议