谈谈你对虚拟 DOM 的理解

133 阅读1分钟

什么是虚拟DOM?

通过JS对象来模拟DOM结构,本质上一个JS对象。

虚拟DOM优缺点?

优点

1.性能优化,通过使用虚拟DOM,可以避免频繁地直接操作真实DOM,从而减少了浏览器的重绘和回流,提高了页面的性能和响应速度。

2.跨平台能力,虚拟DOM不依赖于具体的平台或浏览器,可以在不同的环境中使用。

缺点

1.内存的消耗,虚拟DOM需要在内存中构建和维护一棵虚拟DOM树,这会占用一定的内存空间。对于大型应用程序或组件树,虚拟DOM的内存消耗可能会比直接操作实际DOM更高。

2.虚拟DOM的diff算法需要对比新旧虚拟DOM树的差异,这涉及一定的计算和遍历操作。对于简单的应用程序或组件,直接操作实际DOM可能更高效。

为什么React、Vue需要虚拟DOM?

1.框架设计问题,数据发生改变的时候不能捕获到对应DOM节点。所以需要虚拟DOM对比差异再操作DOM,是一个不得已的方案。

2.跨平台的能力。因为虚拟DOM不依赖浏览器或其他平台,使用上更灵活,可以对于不同的场景映射不同的标签规则。

虚拟DOM转换成真实DOM的过程?

等我学习完~