更加关注过程
关注结果
对于框架而言,声明式的性能 = 命令式的性能 + 找出差异的损耗
挂载阶段,React 将结合 JSX 的描述,构建出虚拟 DOM 树,然后通过 ReactDOM.render 实现虚拟 DOM 到真实 DOM 的映射(触发渲染流水线);
更新阶段,页面的变化在作用于真实 DOM 之前,会先作用于虚拟 DOM,虚拟 DOM 将在 JS 层借助算法先对比出具体有哪些真实 DOM 需要被改变,然后再将这些改变作用于真实 DOM。
虚拟dom是一个用来描述真实dom的JS对象, 虚拟DOM是整个DOM操作发展历史长河中的产物,这种概念其实和具体的框架是没有关系的。
虚拟dom并不一定能带来更好的性能,他的优势自安于提供更高效的UI编程模式的同时,保持一个还不错的性能。
数据+模版=>真实DOM=>挂载 数据+模版=>虚拟DOM=>真实DOM=>挂载
新旧DOM->Diff->补丁集->patch->真实DOM