Virtual DOM

2019-04-08  本文已影响0人  HelenYin

Virtual DOM 算法:

  1. 用 JavaScript 对象结构表示 DOM 树的结构;然后用这个树构建一个真正的 DOM 树,插到文档当中
  2. 当状态变更的时候,重新构造一棵新的对象树。然后用新的树和旧的树进行比较,记录两棵树差异
  3. 把2所记录的差异应用到步骤1所构建的真正的DOM树上,视图就更新了

Virtual DOM 本质上就是在 JS 和 DOM 之间做了一个缓存。可以类比 CPU 和硬盘,既然硬盘这么慢,我们就在它们之间加个缓存:既然 DOM 这么慢,我们就在它们 JS 和 DOM 之间加个缓存。CPU(JS)只操作内存(Virtual DOM),最后的时候再把变更写入硬盘(DOM)。

还需要了解的知识:
  1. 算法复杂度
  2. 二叉树的遍历

3.文本比较算法和最小编辑距离
https://github.com/livoras/blog/issues/13

上一篇下一篇

猜你喜欢

热点阅读