React 虚拟dom

虚拟dom react核心机制

内存中轻量级JS对象树模拟真实DOM,主要目的是减少操作真实dom的开销

具体是通过diff算法计算最小的变更,批处理更新真实dom元素

diff算法

特点

同级去进行比较,不涉及跨层的一个比较

使用key值优化列表遍历过程

对相同类型的节点,递归比较其子节点

具体流程

从根节点出发,IF类型不同,销毁旧节点和子树,ELSE更新变化的属性进入子节点的递归

list diff 双指针遍历策略 old指针 new 指针

new和old相同key 复用节点

不同销毁old节点

改进:支持中断遍历,拆分为多个小任务。和优先级调度

相关推荐
重阳微噪3 小时前
受够了空格翻页?我写了一个 Chrome 自动滚动插件,让你真正沉浸式阅读
前端
Awu12273 小时前
🍎用 pretext 搞定输入框动态宽度:一个困扰了我三天的 CSS 问题
前端
萑澈3 小时前
我用 Cloudflare 搭了一个 FlashInbox 临时邮箱
前端·next.js
慕斯fuafua3 小时前
CSS——盒模型
前端·css
嗜好ya3 小时前
解决 Vite 项目中 import.meta.env 变量为 undefined 的问题
前端·javascript·vue.js
Mapmost3 小时前
Mapmost专题地图:解锁这场春游“热”
前端
心连欣3 小时前
JS算法入门:图解“冒泡排序”,彻底搞懂双重循环的奥义
前端·javascript
suedar4 小时前
React 16 + TDesign Table 卡死问题深度复盘
前端
浩星4 小时前
「Vue3 + Cesium 最佳实践」完整工程化方案
前端·javascript·vue.js