我了解到虚拟域如何批次DOM操作来提高性能。然而,我看到一些帖子说虚拟域是快速的,因为它是实际DOM的in-memory representation。
我读过这个回答。上面写着:
另一方面,必须从页面访问真正的DOM,并将其加载到内存中进行任何操作。
这是否意味着浏览器的真正DOM不在内存中?如果浏览器的DOM也是in-memory,那么虚拟dom的in-memory有什么特殊之处呢?
发布于 2021-03-12 09:37:33
虚拟DOM只是内存中的javascript对象。虽然DOM也主要存在于内存中(磁盘和云中不存在),但它是一个复杂的系统,有许多连接的部分。
区别在于DOM速度慢。操作DOM涉及许多其他任务(https://stackoverflow.com/a/6817110/8810271)。在没有其他任务的情况下操作虚拟DOM只不过是一个javascript对象,它比element.innerHTML=x快得多。
但请记住,在对虚拟DOM进行扩展之后,仍然需要对DOM进行操作,以使更改生效。和它并不总是更快。
https://stackoverflow.com/questions/66595934
复制相似问题