diff 算法 是什么:
简单来说:
1.diff算法是精细化对比最小量的更新。
2.diff算法可以让Dom以最小的代价进行更新。
3.diff算法会优先遍历,以及对比差异,在代码中会对新旧Dom树进行深度遍历,以及每个节点都会有一个标记。
虚拟dom是什么:
1.web界面由dom树(也叫数据结构)构建,当其一部分发生变化,就是某一个节点发生了变化。
2.设计虚拟dom就是为了解决浏览器性能消耗的问题,若用户一个操作产生多次更新dom动作,虚拟dom不会直接操作dom,它会将这10次diff中的内容存储到本地的一个JS对象中,最后将这个JS对象一次性attch传到dom树上,再进行后续操作,避免大量无谓的计算量。