HTML DOM Element nodeType Property

Definition and Usage

nodeType The attribute returns the node type of the specified node in numeric form.

  • 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.

See also:

nodeName attribute

nodeValue attribute

tagName attribute

childNodes attribute

Instance

Example 1

Get the node type of the body element:

var x = document.getElementById("myP").nodeType;

Try it yourself

Example 2

Return the node type of the <body> element:

document.body.nodeType;

Try it yourself

Example 3

Display the node type 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 4

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

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

Syntax

node.nodeType

Return value

Type Description
Value The node type of the node. See the following table.

Node type

The documents, elements, attributes, and other nodes of HTML or XML documents have different node types.

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

Type Description Child nodes
1 Element Represents an element
  • Element
  • Text
  • Comment
  • ProcessingInstruction
  • CDATASection
  • EntityReference
2 Attr Represents an attribute
  • Text
  • EntityReference
3 Text Represents the text content in an element or attribute None.
4 CDATASection Represents the CDATA section in the document
(Text that will not be parsed by the 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 that can save a fragment of the document.
  • Element
  • ProcessingInstruction
  • Comment
  • Text
  • CDATASection
  • EntityReference
12 Notation Represents the symbols declared in the DTD None.

Node type - return value

Each node type has a nodeName and nodeValue property return value:

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

Node type - named constants

Type Named constants
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

Browser support

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

All browsers fully support it:

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