DOM与虚拟DOM

本文详细介绍了DOM的基本概念、Node接口属性与方法,包括innerText、textContent的区别,以及DOM事件流。同时,深入探讨了虚拟DOM的原理,解释了为何及如何使用虚拟DOM以提高性能,详细阐述了虚拟DOM的diff算法及其优化策略。
摘要由CSDN通过智能技术生成

1. DOM(Document Object Model)

2018年通用版本是 DOM 3
DOM的作用:对Html文档进行增删改查

DOM文档树:
(Object =>)
祖先 Node =>
Document创建Html标签;Text 创建文本;Element 创建其他元素标签;Comment 创建注释…

2. Node 接口

2. 1 属性
  • childNodes //获取的NodeList是动态集合,和querySelector()不同
  • firstChild
  • innerText
  • lastChild
  • nextSibling //会获取到文本节点的
  • nodeName
  • nodeType
  • nodeValue
  • outerText
  • ownerDocument
  • parentElement
  • parentNode
  • previousSibling //会获取到文本节点的
  • textContent
2.1.1 innerText,innerHtml,outerText,outerHtml 和textContent 的区别
在获取内容时:

innerText 是返回的是标签内部所有文本内容(包括空格),不包括标签本身;
innerHtml 是返回标签内部所有内容,包括内部的 Html 标签;

outerText 非标准,不要用,所以不讲解
outerHtml 是 返回目标标签 + innerHtml 的内容

在写入内容时:
<div id="test"><span>替换前</span></div>   // 都以此示例
//网页打开是:替换前

document.getElementById('test').innerText= "<div>替换后</div>"; 
// 原Html变为:<div id="test">&lt;div&gt;替换后&lt;/div&gt;</div>
//网页打开是: <div>替换后</div>

document.getElementById('test').innerHtml= "<div>替换后</div>"; 
// 原Html变为:<div id="test"><div>替换后</div></div&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值