vue-react为何要使用虚拟dom
- 虚拟dom不是真的dom,而是JS的一种数据结构,一套更新机制罢了(数据结构+算法组成程序,他就是这么组成的)
- 其主要是用来做跨平台的,利用虚拟dom能无缝同时开发前端、移动端甚至pc端
- 工程化的开发,抽象简化渲染逻辑,利用数据驱动ui的方式,能减少不少dom的操作,提高开发效率,减少学习成本,代码可读性、可维护性也更好
- 存在diff算法对比,当频繁修改界面元素时,虚拟dom能够减少很多不必要的渲染次数,减少界面重拍,从而提高性能(并不是说一定比操作真是dom快,实际直接操作dom是效率最高的,但对于大多数开发者来说都很难做到极致的优化,尤其是初级开发者占比高,对于优化了解不多,这样操作真实dom反而大幅度增加冗余操作,反而降低实际渲染效率,且大公司业务复杂,遗留问题更多,更难处理此类问题)
- 社区发展很久,大量优秀轮子的出现,更加标准化的开发规范,能够大幅度降低学习上手难度,能够更快补足开发者数量上的不足,减少企业开发和维护成本,从而进一步促进其繁荣(鸿蒙就是出来的晚,社区不完善,好用的轮子少,需要大量时间发展,学习开发成本都高不少,人力也不足没办法大规模推广,这也是很重要的一个因素)