对虚拟dom的简单理解

对虚拟dom的简单理解

  1. DOM是什么?

    DOM是document object model的缩写,文档对象模型。是浏览器在解析html代码时,把每个标签抽象出来的对象。

    根据层级关系,html代码最后会被浏览器解析成一颗DOM树。

  2. 虚拟dom

    是使用js模拟了DOM树形结构,和浏览器没有任何联系。因此操作虚拟dom的速度要明显高于DOM。

  3. diff算法

    对树进行分层比较,两颗树进行对比时只会对同一层级的节点进行比较。

    vue在数据发生变化后,会获取到数据变化前的对应虚拟dom和变化后的虚拟dom,然后对新旧虚拟dom进行diff,最后通知dom完成dom的更新工作。

原文地址:https://www.cnblogs.com/lucyliang/p/14216806.html