虚拟dom的具体理解

关于虚拟dom的文章真的不要太多,但是阅读下来感觉没有通俗易懂的,我不喜欢啰嗦,就喜欢讲人话。

下面来说下,我理解的虚拟dom

背景
我们知道在jquery时代,都是直接操作dom的,你需要在适当的时机以正确的顺序来制定要更改的元素,相当于我们自己要时时刻刻看着dom,然后告诉它你头要怎么放,手要摆怎么样的姿势。所以问题来了,你为什么不一次性告诉dom你想要的结果呢?而且另外一个常识问题就是操作dom其实是相当慢的。

虚拟dom
在这样的一个时代背景下,虚拟dom应时而生。
什么是虚拟dom?
1、用js模拟了一颗dom树,并放在了浏览器内存里
2、当你有元素需要变更时,直接告诉虚拟dom,虚拟dom先生成出你想要的样子。而且这个速度非常快
3、使用diff算法进行新旧虚拟dom比较,得出一个变更,将这个变更放到变更队列中,然后批量将这些变更反应到实际的dom树中,这样就减少了dom的操作。

猜你喜欢

转载自blog.csdn.net/abS9879/article/details/81180549