JavaScript DOM 1- Node, HTMLElement之间到底是什么关系

发布时间:2019-06-16 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了JavaScript DOM 1- Node, HTMLElement之间到底是什么关系脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

先看一段最简单的HTML代码:

<html>
    <head>
        <title>Document Example</title>
    </head>
    <body>
        <h1>An HTML Document</h1>
        <div>
            <p>Text</p>
        </div>
    </body>
</html>

它的DOM结构可以表示成:

JavaScript DOM 1- Node, HTMLElement之间到底是什么关系

整个是一个树状结构,在树状图里面是不是有个“节点”,也就是‘node’的概念?
是的,图中的每一个框框就是一个Node对象。'<html>....</html>'是一个node, '<div>...</div>'是一个node, 我们放在<p>里面的文字'Text'也是一个node.

再来看一张抽象了的图:

JavaScript DOM 1- Node, HTMLElement之间到底是什么关系

上面这张图,表示了Node, Element, HTMLElment等的继承关系。所以其实这个时候应该就很清楚它们之间的关系了。Document, Element都是不同类型的node, HTMLElment又是一种类型的Element, 而我们最熟悉的HTMLDivElment, HTMLInputElement等都是不同类型的HTMLElment.

接下来看一张图,图片来自MDN

JavaScript DOM 1- Node, HTMLElement之间到底是什么关系

图上的常量都是定义在Node类上的,所以可以直接通过Node.DOCUMENT_NODE引用。每一个node都会有一个nodeType的变量来标识它是哪一种类型的node。例如下图所示:

JavaScript DOM 1- Node, HTMLElement之间到底是什么关系

到此为止,我们应该弄清楚node,Node以及HTMLElement的相关概念了。
ps: 文章里把Node叫做‘类’,只是为了更好的理解它的概念,因为在在es6之前,ECMAScript并没有‘Class’这个东西。

脚本宝典总结

以上是脚本宝典为你收集整理的JavaScript DOM 1- Node, HTMLElement之间到底是什么关系全部内容,希望文章能够帮你解决JavaScript DOM 1- Node, HTMLElement之间到底是什么关系所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:es6HTML