HTML DOM Element nodeType

Example

Get the node type of the body element:

var x = document.getElementById("myP").nodeType;
Try it Yourself »

More "Try it Yourself" examples below.


Description

The nodeType property returns the node type, as a number, of the specified node.

If the node is an element node, the nodeType property will return 1.

If the node is an attribute node, the nodeType property will return 2.

If the node is a text node, the nodeType property will return 3.

If the node is a comment node, the nodeType property will return 8.

This property is read-only.


Syntax

node.nodeType

Return Value

Type Description
NumberThe node type of the node.
See table below.


Node Types

Documents, elements, attributes, and other nodes of HTML or XML documents has different node types.

There are 12 different node types, which may have children of various node types:

Type Description Children
1 Element Represents an element Element, Text, Comment, ProcessingInstruction, CDATASection, EntityReference
2 Attr Represents an attribute Text, EntityReference
3 Text Represents textual content in an element or attribute None
4 CDATASection Represents a CDATA section in a document (text that will NOT be parsed by a parser) None
5 EntityReference Represents an entity reference Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
6 Entity Represents an entity Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
7 ProcessingInstruction Represents a processing instruction None
8 Comment Represents a comment None
9 Document Represents the entire document (the root-node of the DOM tree) Element, ProcessingInstruction, Comment, DocumentType
10 DocumentType Provides an interface to the entities defined for the document None
11 DocumentFragment Represents a "lightweight" Document object, which can hold a portion of a document Element, ProcessingInstruction, Comment, Text, CDATASection, EntityReference
12 Notation Represents a notation declared in the DTD None

Node Types - Return Values

The return value of the nodeName and the nodeValue properties for each node type:

Type nodeName nodeValue
1 Element element name null
2 Attr attribute name attribute value
3 Text #text content of node
4 CDATASection #cdata-section content of node
5 EntityReference entity reference name null
6 Entity entity name null
7 ProcessingInstruction target content of node
8 Comment #comment comment text
9 Document #document null
10 DocumentType doctype name null
11  DocumentFragment #document fragment null
12 Notation notation name null

NodeTypes - Named Constants

Type Named Constant
1 ELEMENT_NODE
2 ATTRIBUTE_NODE
3 TEXT_NODE
4 CDATA_SECTION_NODE
5 ENTITY_REFERENCE_NODE
6 ENTITY_NODE
7 PROCESSING_INSTRUCTION_NODE
8 COMMENT_NODE
9 DOCUMENT_NODE
10 DOCUMENT_TYPE_NODE
11 DOCUMENT_FRAGMENT_NODE
12 NOTATION_NODE

More Examples

Example

Return the node type of the <body> element:

document.body.nodeType;
Try it Yourself »

Example

Display the node types of all elements:

const nodes = document.body.childNodes;

let text = "";
for (let i = 0; i < nodes.length; i++) {
  text += nodes[i].nodeType + "<br>";
}
Try it Yourself »

Example

Get the node name, value and type of "myDIV"s first child node:

const x = document.getElementById("myDIV").firstChild;

let text = "";
text += "Name: " + x.nodeName + "<br>";
text += "Value: " + x.nodeValue + "<br>";
text += "Type: " + x.nodeType;
Try it Yourself »

Browser Support

element.nodeType is a DOM Level 1 (1998) feature.

It is fully supported in all browsers:

Chrome Edge Firefox Safari Opera IE
Yes Yes Yes Yes Yes 9-11

Copyright 1999-2023 by Refsnes Data. All Rights Reserved.