⭐️ 本文首发自 前端修罗场(点击加入社区,参与学习打卡,获取奖励),是一个由资深开发者独立运行的专业技术社区,我专注 Web 技术、区块链、Web 3、答疑解惑、面试辅导以及职业发展。🔥 本文已收录至前端面试题库专栏: 《前端面试复习笔记》(点击订阅)。
从本质上来说,Virtual Dom是一个 JavaScript 对象,通过对象的方式来表示 DOM 结构。将页面的状态抽象为JS对象的形式,配合不同的渲染工具,使跨平台渲染成为可能。通过事务处理机制,将多次 DOM 修改的结果一次性的更新到页面上,从而有效的减少页面渲染的次数,减少修改 DOM 的重绘重排次数,提高渲染性能。
虚拟 DOM 是对 DOM 的抽象,这个对象是更加轻量级的对 DOM 的描述。它