Virtual Dom简述

一、Virtual Dom是啥?

就是普通的js对象
1、重新渲染有变化的dom,从而有效的减少页面渲染的次数,减少修改DOM的重绘重排次数,提高渲染性能
2、这个对象描述了界面的渲染内容,配合不同的渲染工具,将使跨平台渲染成为可能。

二、Virtual Dom是怎么工作的

先看一下正常H5页面的渲染过程:
解析HTML —> 生成DOM —> CSSOM —> Layout —> Paint —> Compiler
虚拟dom将数据和dom绑定,指定更新需要更新的dom节点,降低频繁操作dom的消耗,就等于提升了性能

Vue怎么实现的?
一个Vue template,Vue帮你编译成AST(抽象语法树),每次render()时通过createElement()生成VNode,VNode组成了Virtual Dom,Vue会与上一次的Virtual Dom进行对比differ生成新的Virtual Dom,Vue通过update()再更新对应的dom

React怎么实现的?
React使用的是jsx语法,每次render()时通过babel将jsx语法转化成React.createElement()执行,产物就是Virtual Dom

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值