1.vue权衡的艺术

性能对比

javascript创建10000个字段,要比dom创建10000节点快很多,所以,如果能将主要的工作放到js中去,就能节省掉大量的性能

所以,使用js创建虚拟的dom,然后当数据发生变化时,在js中进行数据的比对(diff),要比dom破坏性的重建性能优越很多

js运算 虚拟dom innerHTML
dom运算 创建新的js对象+数据变化的比对(diff) 渲染innerHTML字符串
动作 和变化有关的DOM进行更新 销毁所有旧DOM,新建所有新DOM
性能因素 和数据变化量有关 与模板大小有关
innerHTML(模板) 虚拟DOM 原生js
心智负担中等,性能差 心智负担小,可维护强,性能不错 心智负担大,可维护性差,性能高

虚拟dom的精髓

虚拟dom性能公式: 声明式的更新性能消耗 = 找出差异的性能消耗 + 直接修改的性能消耗。

虚拟的意义就在于使找出差异的性能消耗最小化。

总结

相关推荐
白茶三许1 小时前
【2025】Flutter 卡片组件封装与分页功能实现:实战指南
flutter·开源·openharmony
WYiQIU2 小时前
11月面了7.8家前端岗,兄弟们12月我先躺为敬...
前端·vue.js·react.js·面试·前端框架·飞书
谢尔登2 小时前
简单聊聊webpack摇树的原理
运维·前端·webpack
娃哈哈哈哈呀2 小时前
formData 传参 如何传数组
前端·javascript·vue.js
zhu_zhu_xia3 小时前
vue3+vite打包出现内存溢出问题
前端·vue
tsumikistep4 小时前
【前后端】接口文档与导入
前端·后端·python·硬件架构
513495924 小时前
Vite环境变量配置
vue.js
行走的陀螺仪4 小时前
.vscode 文件夹配置详解
前端·ide·vscode·编辑器·开发实践
2503_928411564 小时前
11.24 Vue-组件2
前端·javascript·vue.js
Bigger5 小时前
🎨 用一次就爱上的图标定制体验:CustomIcons 实战
前端·react.js·icon