虚拟dom react核心机制
内存中轻量级JS对象树模拟真实DOM,主要目的是减少操作真实dom的开销
具体是通过diff算法计算最小的变更,批处理更新真实dom元素
diff算法
特点
同级去进行比较,不涉及跨层的一个比较
使用key值优化列表遍历过程
对相同类型的节点,递归比较其子节点
具体流程
从根节点出发,IF类型不同,销毁旧节点和子树,ELSE更新变化的属性进入子节点的递归
list diff 双指针遍历策略 old指针 new 指针
new和old相同key 复用节点
不同销毁old节点
改进:支持中断遍历,拆分为多个小任务。和优先级调度