虚拟DOM与DOM DIFF

85 阅读1分钟

1.什么是虚拟DOM?

一个能代表DOM数的对象,通常包含标签名,标签上的属性,事件监听和子元素们,以及其他属性

2.虚拟DOM的优点

虚拟DOM可以减少DOM操作:

虚拟DOM可以将多次操作合并为一次操作,比如添加1000个节点,DOM是一个接一个添加的

虚拟DOM借助DOM DIFF可以把多余的操作省略掉,比如添加一千个节点,其实只有十个是新增的.

跨平台:

虚拟DOM不仅可以变成DOM,还可以变成小程序,IOS应用,安卓应用,因为虚拟DOM本质上是一个JS对象

3.虚拟DOM的缺点

需要额外的创建函数来创建虚拟DOM,如createElement或h,但可以通过JSX来简化

4.什么是DOM diff

DOM diff是一个函数,名为patch

5.DOM diff的优点

可以节省DOM操作,还可以跨平台

6.DOM diff缺点

同级比较存在bug,可以通过增加key的值来避免