66 .VNode 是什么? 什么是虚拟 DOM?

1) VNode 是什么

VNode 是 JavaScript 对象, VNode 表示 Virtual DOM(虚拟DOM)中的虚拟节点,用 JavaScript 对
象来描述真实的 DOM 把 DOM 标签  属性,内容都变成 对象的属性

 

2) VNode 的优点
1、兼容性强,不受执行环境的影响。因为 VNode 是 JS 对象,不管 Node
还是浏览器,都可以统一操作,所以获得了服务端渲染、原生渲染、手写渲染函
数等能力。
2、减少操作 DOM,任何页面的变化,都只使用 VNode 进行操作对比,只
需要在最后一步挂载更新 DOM,不需要频繁操作 DOM,从而提高页面性能。

什么是虚拟 DOM?

虚拟 dom 是相对于浏览器所渲染出来的真实 dom而言的 就是一个普通的 JavaScript 对象,目的是为了进行最小化地DOM操作。

为什么要用虚拟DOM来描述真实的DOM呢?
创建真实DOM成本比较高,而如果用js对象来描述一个dom节点,成本比较低,另外我们在频繁操作dom是一种性能开销比较大。所以用虚拟dom来描述真实dom。

1.为什么操作真实DOM的成本比较高?

我认为有以下几点

(1) 真实 DOM 因为浏览器厂商需要实现众多的规范(各种 HTML5 属性、DOM事件),即使创建一个空的 div 也要付出昂贵的代价。

(2) dom 操作引起的浏览器的回流和重绘,使得性能开销巨大。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值