什么是虚拟DOM?

虚拟DOM的内涵和外延?

内涵

虚拟DOM它是真实DOM的内存表示,一种编程概念,一种模式。它会和真实的DOM同步,比如通过ReactDOM这种库,这个同步的过程叫做调和(reconcilation)。

描述HTML标签,使用JS对象来表示。

虚拟DOM更多是一种模式,不是一种特定的技术。

外延

它的外延便是javaScript对象,而React返回的React元素也是对象,层层嵌套,就像DOM树。

虚拟DOM提出,解决了什么问题?

一个技术提出,背后有它的故事的。是什么呢?怎么会提出虚拟DOM?当时技术解不了什么问题?
提出了虚拟DOM,那怎么去实现一套技术呢?怎么声明语法?

在React世界里,虚拟DOM跟React元素关联在一起的,因为它们都表达了用户界面的对象。
这个编程概念提出,解放了对DOM细节的操作,无须关心具体DOM的API,只需要描述,我想要什么样的页面,告诉React,它会帮我们去渲染。

虚拟DOM之上延伸了什么概念?

由于是虚拟DOM,延伸了React的API是声明式的,我们不需要具体操作DOM。ReactDOM会操作DOM。

虚拟DOM没有解决什么问题?

目前自己了解的,虚拟DOM无非是JavaScript对象的表示。

参考链接:
React官网-Virtual DOM

怎么写你自己的虚拟DOM