Real DOM 和 Virtual DOM比较

简介: Real DOM 和 Virtual DOM比较

Reacl DOM(真实DOM)

1.什么是真实DOM:真实dom是页面上渲染的dom节点

1. <div class='root'>
2.     <h2>root</h2>
3. </div>

Virtual DOM(虚拟DOM)

a.本质:虚拟DOM本质是一个轻量级的js对象

b.具体工作流程:

i.每当底层数据发生变化时,整个UI都将在虚拟dom中重新渲染;

ii.进行新旧虚拟dom的对比

iii.将差异更新到真实的dom结构上

区别:

a.虚拟dom不会进行重绘和回流,而真实dom会频繁重排与重绘

b.虚拟dom的总损耗是”虚拟dom的增删改+真实dom的差异增删改+重排“;真实dom的消耗是”真实dom全部增删改+重排“

优缺点:

Reacl DOM

i.优点:直接操作HTML,易用

ii.缺点:

1.解析速度慢,效率低,内存占用量高

2.性能差:频繁操作真实DOM,导致重绘、回流

Virtual DOM

i.优点:

1.减少真实dom的频繁更新,减少重绘回流、占用内存少

2.跨平台:一套react代码可以多端运行

ii.缺点:页面首次渲染时,由于多一层虚拟dom的计算,速度比正常慢些


目录
相关文章
|
6月前
|
JavaScript 前端开发 算法
js开发:请解释什么是虚拟DOM(virtual DOM),以及它在React中的应用。
虚拟DOM是React等前端框架的关键技术,它以轻量级JavaScript对象树形式抽象表示实际DOM。当状态改变,React不直接操作DOM,而是先构建新虚拟DOM树。通过高效diff算法比较新旧树,找到最小变更集,仅更新必要部分,提高DOM操作效率,降低性能损耗。虚拟DOM的抽象特性还支持跨平台应用,如React Native。总之,虚拟DOM优化了状态变化时的DOM更新,提升性能和用户体验。
87 0
|
6月前
|
XML JavaScript 前端开发
React中 Real DOM 和 Virtual DOM 的区别?优缺点?
React中 Real DOM 和 Virtual DOM 的区别?优缺点?
83 0
|
6月前
|
JavaScript 前端开发 算法
React中的Virtual DOM(看这一篇就够了)
React中的Virtual DOM(看这一篇就够了)
986 0
|
6月前
|
JavaScript 前端开发 算法
Virtual DOM
Virtual DOM
31 0
|
JavaScript 前端开发
说说Real DOM和Virtual DOM的区别?优缺点?
在页面渲染出的每个节点都是一个真实的DOM结构
|
JavaScript 前端开发
【DOM】Real DOM与Virtual DOM
【DOM】Real DOM与Virtual DOM
63 0
|
XML JavaScript 前端开发
深入理解Virtual DOM的工作原理
虚拟DOM(Virtual DOM)是前端开发中的一个重要概念,它是用于提高页面渲染性能和优化开发体验的技术。理解虚拟DOM的工作原理对于前端开发者来说至关重要。在深入理解虚拟DOM的工作原理之前,让我们先了解一下DOM和Virtual DOM的基本概念。
145 0
|
XML 移动开发 JavaScript
Virtual Dom & JSX
Virtual Dom & JSX
68 0
|
1月前
|
JavaScript
DOM 节点列表长度(Node List Length)
DOM 节点列表长度(Node List Length)
|
23天前
|
JavaScript
HTML DOM 节点树
HTML DOM 节点是指在 HTML 文档对象模型中,文档中的所有内容都被视为节点。整个文档是一个文档节点,每个 HTML 元素是元素节点,元素内的文本是文本节点,属性是属性节点,注释是注释节点。DOM 将文档表示为节点树,节点之间有父子和同胞关系。