Javascript 文本在DOM中也被视为节点吗?

Javascript 文本在DOM中也被视为节点吗?,javascript,html,dom,Javascript,Html,Dom,我开始阅读JavaScript和DOM,我发现在这样的结构中: <html> <head> <title>The title</title> </head> <body> The body </body> </html> <html> <head> <title>DOM Tutorial</title>

我开始阅读JavaScript和DOM,我发现在这样的结构中:

<html>
  <head>
    <title>The title</title>
  </head>
  <body>
     The body
   </body>
</html>
<html>
  <head>
      <title>DOM Tutorial</title>
  </head>
  <body>
      <h1>DOM Lesson one</h1>
      <p>Hello world!</p>
  </body> 
</html>
<title><!-- DOM Tutorial --></title>

标题
身体
文本、标题和正文也被视为节点,如下图所示(来自同一站点):

请注意,标题和正文表示为实际标题各自正文节点的子级。让我困惑的是:标题和正文不就是节点
的值吗

我在类似结构中的何处遇到过类似的示例:

<html>
  <head>
    <title>The title</title>
  </head>
  <body>
     The body
   </body>
</html>
<html>
  <head>
      <title>DOM Tutorial</title>
  </head>
  <body>
      <h1>DOM Lesson one</h1>
      <p>Hello world!</p>
  </body> 
</html>
<title><!-- DOM Tutorial --></title>

DOM教程
第一课
你好,世界

元素的值也像节点一样描述:

有一个子项:“DOM第一课”

有一个孩子:“你好,世界!”

为什么节点内的文本值被视为不同的节点,而不仅仅是包含它们的节点的文本值

谢谢大家!

让我困惑的是:标题和正文不只是价值观吗 节点和

不,它们实际上是那个些节点的子节点。您可以通过输出
标题
标记的
子项
属性来查看它:

document.querySelector('title').children
文本节点表示为
节点。如前所述,Text_Node=3
。只有表单DOM元素(如输入)具有
value
属性,并且这些输入中输入的文本包含在其中

除了文本节点,还有注释节点,如下所示:

<html>
  <head>
    <title>The title</title>
  </head>
  <body>
     The body
   </body>
</html>
<html>
  <head>
      <title>DOM Tutorial</title>
  </head>
  <body>
      <h1>DOM Lesson one</h1>
      <p>Hello world!</p>
  </body> 
</html>
<title><!-- DOM Tutorial --></title>

为什么节点内的文本值被视为不同的节点而不是其他节点 只是包含它们的节点的文本值

可能是因为它们需要在内存中表示不同的结构,以便可以对其进行操作,例如,更改文本的颜色

标题
正文
文本不就是节点的值吗

不完全是。它们是文本节点的值,分别是
的子节点

值本身不是节点,但文本节点确实是节点

注意:并非所有节点类型都可以有值,例如,元素不能。文本不能直接作为元素的值。这是因为元素可以同时包含文本和元素子元素,例如

<div>Hello<span> - </span>World</div>
Hello-World
这里很明显,
div
元素没有明显的值。相反,你需要一棵树

  • 元素节点
    div
    带子节点
    • 具有值的文本节点
      Hello
    • 带有子元素的元素节点
      span
      • 值为
        -
    • 具有值的文本节点
      World

感谢您提供的信息,现在很清楚,它们是文本的独立节点@meJustAndrew,当然,检查我在问题中链接到的文章。@Maximus我认为DOM是基于它前面的XML。尽管HTML本身不是XML,但为了构建DOM,它被规范化了。谢谢您,先生,详细的解释!