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性能公式: 声明式的更新性能消耗 = 找出差异的性能消耗 + 直接修改的性能消耗。

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

总结

相关推荐
浩星7 分钟前
electron系列7之Electron + Vue 3:构建现代化桌面应用(上)
javascript·vue.js·electron
m0_738120727 分钟前
渗透测试基础ctfshow——Web应用安全与防护(四)
前端·安全·web安全·网络安全·flask·弱口令爆破
似水流年QC14 分钟前
Chrome Performance 面板前端性能分析从入门到实战
前端·chrome
君穆南14 分钟前
docker里面的minio的备份方法
前端
Thomas214314 分钟前
--remote-debugging-port=9222 和 chrome://inspect/#remote-debugging 区别
前端·chrome
Luna-player14 分钟前
二本生找前端工作
前端
悟空码字17 分钟前
多租户CRM系统开源了,支持公海、线索、客户、订单管理等核心功能(附源码)
开源·crm
M ? A17 分钟前
Vue3 转 React 工具 VuReact v1.6.0 更新:useAttrs 完美兼容,修复模板迁移 / 类型错误
前端·javascript·vue.js·react.js·开源·vureact
计算机学姐20 分钟前
基于SpringBoot的充电桩预约管理系统【阶梯电费+个性化推荐+数据可视化】
java·vue.js·spring boot·后端·mysql·信息可视化·mybatis
低保和光头哪个先来22 分钟前
解决 ios 使用 video 全屏未铺满页面问题
前端·javascript·vue.js·ios·前端框架