W3cubDocs

/Web APIs

Node: nodeName property

The read-only nodeName property of Node returns the name of the current node as a string.

Value

A string. Values for the different types of nodes are:

Attr

The value of Attr.name, that is the qualified name of the attribute.

CDATASection

The string "#cdata-section".

Comment

The string "#comment".

Document

The string "#document".

DocumentFragment

The string "#document-fragment".

DocumentType

The value of DocumentType.name

Element

The value of Element.tagName, that is the uppercase name of the element tag if an HTML element, or the lowercase element tag if an XML element (like a SVG or MATHML element).

ProcessingInstruction

The value of ProcessingInstruction.target

Text

The string "#text".

Example

This example displays the node names of several nodes

html

This is some HTML:
<div id="d1">Hello world</div>
<!-- Example of comment -->
Text <span>Text</span> Text<br />
<svg height="20" width="20">
  <circle cx="10" cy="10" r="5" stroke="black" stroke-width="1" fill="red" />
</svg>
<hr />
<output id="result">Not calculated yet.</output>

and the following script:

js

let node = document.querySelector("body").firstChild;
let result = "Node names are:<br/>";
while (node) {
  result += `${node.nodeName}<br/>`;
  node = node.nextSibling;
}

const output = document.getElementById("result");
output.innerHTML = result;

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet
nodeName 1 12 1 6 ≤12.1 1 4.4 18 4 ≤12.1 1 1.0

See also

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Node/nodeName