JavaScript虚拟dom

定义

  • 本质上是js对象,是真实dom的抽象,在状态变更的时候,记录新树和旧树的差异,最后把差异更新到真正的dom中
  • 执行流程:
    1. 将页面的更新反应在js对象(虚拟dom)上
    2. 操作内存中的JS对象,速度更快
    3. 更新完成后,再将最终的JS对象映射成真实的DOM,交由浏览器去绘制。

作用

  • 无需手动操作dom,解决在代码中操作dom的混乱以及高耦合性、难以维护等问题
  • 保证性能下限,优化前端性能,避免多次渲染dom,提高渲染效率
  • 跨平台,js对象比dom树更方便跨平台操作,例如服务器渲染、移动端开发等

缺点

  • 无法极致性能优化,毕竟构建了一个新的对象

你可能感兴趣的:(JavaScript基础,javascript,开发语言,ecmascript)