为什么vue等的这些mvvm框架比传统的操作dom渲染页面要快?
虚拟DOM概念
JavaScript等语言操作dom等频繁dom操作会使页面速度降低。
虚拟dom就是用js对象模拟真实的dom节点,将dom操作反映在虚拟dom上(操作内存中的js对象),再将最终的js对象映射到真实的dom上,再由浏览器渲染,从而加快速度,解决浏览器性能。
dom更新
当data中的数据改变时,将新的数据结合之前的虚拟dom形成新的虚拟dom,然后将新的dom树和旧的dom树进行对比(diff算法),最后将对比出来的差异部分进行重新真实dom结构的渲染