假设一个网页是由一个节点树构成的。考虑到常见 HTML 页面的结构如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body></body>
</html>
树的根节点是一个文档节点,它有两个子节点,doctype 和 html 标签。html 标签由其子项、head 和 body 等构成。
每个节点都有一个名为 nodeType 的属性,该属性是标识其类型的数字。它可以用来区分节点的类型。例如,以下 div 只有一个子节点,其值为 Hello:
<div id="ele">Hello</div>
div 节点是元素节点,而其子节点(Hello)是文本节点。下表取自 MDN,显示了常用的节点类型:
-
Node.ELEMENT_NODE (1):一个元素节点,它是一个 HTML 标签,如<div>、<p> 等。 -
Node.TEXT_NODE (3):元素节点内的实际文本 -
Node.COMMENT_NODE (8):注释节点,例如<!-...--> -
Node.DOCUMENT_NODE (9):文档节点 -
Node.DOCUMENT_TYPE_NODE (10):文档类型节点,例如<!DOCTYPE html>
document.nodeType // 9
简而言之,节点表示文档树中的单个节点,元素是一种特定类型的节点,即 HTML 标签。










