## vue 为什么采用Virtual DOM?
* 创建真实DOM的代价高:真实的 DOM 节点 node 实现的属性很多,而 vnode 仅仅实现一些必要的属性,相比起来,创建一个 vnode 的成本比较低。
* 触发多次浏览器重绘及回流:使用 vnode ,相当于加了一个缓冲,让一次数据变动所带来的所有 node 变化,先在 vnode 中进行修改,然后 diff 之后对所有产生差异的节点集中一次对 DOM tree 进行修改,以减少浏览器的重绘及回流。
* 虚拟dom由于本质是一个js对象,因此天生具备跨平台的能力,可以实现在不同平台的准确显示。
* Virtual DOM 在性能上的收益并不是最主要的,更重要的是它使得 Vue 具备了现代框架应有的高级特性。
- 吴小琼每日10题
- 小程序常见面试题
- Js常见面试题
- HTML+CSS常见面试题
- 03.24
- 【01】谈谈Vue中的$.nextTick的理解
- 【02】请书写css 万能浮动清除法
- 【03】HTML5里的video标签支持哪些视频格式?
- 【04】请书写透明度opacity的IE兼容写法
- 【05】简述原生ajax请求过程,get和post的区别
- 【06】new操作符具体干了什么呢?
- 【07】请手写冒泡排序
- 【08】微信小程序有哪些事件及页面传参的方法?
- 【09】vue的路由hash模式 和 history模式 区别
- 【10】vue路由的钩子函数有哪些,什么情况用
- 03.25
- 【01】CSS3有哪些新特性?
- 【02】HTML5有哪些新特性
- 【03】列举IE和标准下有哪些JS兼容性的写法
- 【04】谈谈你对原型链的理解
- 【05】DOM怎样添加、移除、移动、复制、创建和查找节点
- 【06】Vue的生命周期,第一次加载会触发哪些钩子函数
- 【07】谈一谈小程序的生命周期及其区别
- 【08】简述小程序几种页面跳转方式的区别
- 【09】Vue实现数据双向绑定的原理是什么
- 【10】vuex是什么?怎么使用?哪种功能场景使用它?
- 03.26
- 【01】请阐述import和require的区别
- 【02】export与export default 的区别
- 【03】微信小程序主包和分包区别
- 【04】小程序解析富文本有哪些方式,以及区别
- 【05】$(document).ready和window.onload的区别?
- 【06】请分别用ES5和ES6实现数组去重
- 【07】vue编程式的导航跳转传参的方式有哪些?
- 【08】判断数据类型的方法有哪些,有什么区别
- 【09】less和sass的特点和区别
- 【10】如何去掉inline-block元素之间的间隙
- 03.27
- 【01】端口号的取值范围是多少?
- 【02】cookie、sessionStorage和localStorage区别?
- 【03】数组的常用方法有那些?
- 【04】正则验证,match()与test()函数的区别?
- 【05】Vue组件通信 父子、兄弟、非父子
- 【06】vue 为什么采用Virtual DOM?
- 【07】如何解决Vue 数组/对象更新 视图不更新的情况
- 【08】例举3种强制类型转换和2种隐式类型转换
- 【09】计算1-10000中出现的0 的次数
- 【10】计算字串中每个字符出现的次数