async、defer、type=”module” 到底有什么区别? 写过前端的人大概都遇到过这样的场景:页面加载很慢,或者脚本报错说某个变量没定义,排查半天发现是 <script> 标签的加载方式出了问题。async、defer、type="module... JavaScript前端基础# async# defer 1周前01660
DocumentFragment 到 2026 年还有必要使用吗? 如果你已经好几年没有手写过原生 DOM 操作,DocumentFragment 这个 API 大概率已经被你遗忘在角落里。毕竟现在写业务代码,React、Vue、Svelte 早就把 DOM 更新这件... JavaScript前端基础# DocumentFragment 1周前01100
什么是 Layout Thrashing? 引子:一段"看起来没问题"的代码 假设你需要给页面上的一组元素动态设置宽度,让它们和某个参考元素保持一致。很多人会写出这样的代码: const boxes = document.querySelect... JavaScript前端基础# JS# Layout Thrashing# 浏览器渲染 1周前01640
Reflow、Repaint、Composite 到底有什么区别? 做前端的人多多少少都听过这句忠告:"少触发 reflow,能用 transform 就别用 top/left"。但如果追问一句"reflow 和 repaint 具体差在哪儿?composite 又是... JavaScript前端基础# Composite# Reflow# Repaint 1周前01210
浏览器到底是怎么把 HTML 渲染到屏幕上的? 写了这么多年前端代码,我们每天都在跟 HTML、CSS、JS 打交道,但很少有人真正停下来想一想:从我们敲下 <div> 到用户在屏幕上看到一个个像素点,中间到底发生了什么? 这篇文章尝试... HTML前端基础# HTML# 浏览器 1周前01170
为什么 DOM 操作比普通 JavaScript 运算贵? 写过前端的人大概率都听过这句话——"少操作 DOM"。面试时被问到性能优化,十有八九也会提到"减少 DOM 操作次数"。但这句话背后的原理是什么?为什么同样是"执行一行代码",操作 DOM 就要比普通... JavaScript前端基础# DOM# JavaScript# JS 1周前01330
一本16 年前的 JavaScript 经典,现在还有必要读吗?—2026 重读《高性能 JavaScript》 《高性能 JavaScript》(High Performance JavaScript) 出版于 2010 年,作者 Nicholas C. Zakas 是当年雅虎的前端工程师。放在今天,这本书已经... JavaScript前端基础# JavaScript# 高性能 JavaScript 1周前01070