Node extension type

The Node interface is an abstract base class upon which many other DOM API objects are based, thus letting those object types to be used similarly and often interchangeably. As an abstract class, there is no such thing as a plain Node object. All objects that implement Node functionality are based on one of its subclasses. Most notable are Document, Element, and DocumentFragment.

In addition, every kind of DOM node is represented by an interface based on Node. These include Attr, CharacterData (which Text, Comment, CDATASection and ProcessingInstruction are all based on), and DocumentType.

In some cases, a particular feature of the base Node interface may not apply to one of its child interfaces; in that case, the inheriting node may return null or throw an exception, depending on circumstances. For example, attempting to add children to a node type that cannot have children will throw an exception.


API documentation sourced from MDN Web Docs.

on
Implemented types
Available extensions

Properties

baseURI String
The read-only baseURI property of the Node interface returns the absolute base URL of the document containing the node.
no setter
childNodes NodeList
The read-only childNodes property of the Node interface returns a live NodeList of child Node of the given element where the first child node is assigned index 0. Child nodes include elements, text and comments.
no setter
firstChild Node?
The read-only firstChild property of the Node interface returns the node's first child in the tree, or null if the node has no children.
no setter
hashCode int
The hash code for this object.
no setterinherited
isConnected bool
The read-only isConnected property of the Node interface returns a boolean indicating whether the node is connected (directly or indirectly) to a Document object.
no setter
lastChild Node?
The read-only lastChild property of the Node interface returns the last child of the node, or null if there are no child nodes.
no setter
nextSibling Node?
The read-only nextSibling property of the Node interface returns the node immediately following the specified one in their parent's Node.childNodes, or returns null if the specified node is the last child in the parent element.
no setter
nodeName String
The read-only nodeName property of Node returns the name of the current node as a string.
no setter
nodeType int
The read-only nodeType property of a Node interface is an integer that identifies what the node is. It distinguishes different kind of nodes from each other, such as Element, Text and Comment.
no setter
nodeValue String?
The nodeValue property of the Node interface returns or sets the value of the current node.
getter/setter pair
ownerDocument Document?
The read-only ownerDocument property of the Node interface returns the top-level document object of the node.
no setter
parentElement Element?
The read-only parentElement property of Node interface returns the DOM node's parent Element, or null if the node either has no parent, or its parent isn't a DOM Element.
no setter
parentNode Node?
The read-only parentNode property of the Node interface returns the parent of the specified node in the DOM tree.
no setter
previousSibling Node?
The read-only previousSibling property of the Node interface returns the node immediately preceding the specified one in its parent's Node.childNodes list, or null if the specified node is the first in that list.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
textContent String?
The textContent property of the Node interface represents the text content of the node and its descendants.
getter/setter pair

Methods

addEventListener(String type, EventListener? callback, [JSAny options]) → void
The addEventListener() method of the EventTarget interface sets up a function that will be called whenever the specified event is delivered to the target.
inherited
appendChild(Node node) Node
The appendChild() method of the Node interface adds a node to the end of the list of children of a specified parent node.
cloneNode([bool deep]) Node
The cloneNode() method of the Node interface returns a duplicate of the node on which this method was called. Its parameter controls if the subtree contained in a node is also cloned or not.
compareDocumentPosition(Node other) int
The compareDocumentPosition() method of the Node interface reports the position of its argument node relative to the node on which it is called.
contains(Node? other) bool
The contains() method of the Node interface returns a boolean value indicating whether a node is a descendant of a given node, that is the node itself, one of its direct children (Node.childNodes), one of the children's direct children, and so on.
dispatchEvent(Event event) bool
The dispatchEvent() method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order. The normal event processing rules (including the capturing and optional bubbling phase) also apply to events dispatched manually with dispatchEvent().
inherited
getRootNode([GetRootNodeOptions options]) Node
The getRootNode() method of the Node interface returns the context object's root, which optionally includes the shadow root if it is available.
hasChildNodes() bool
The hasChildNodes() method of the Node interface returns a boolean value indicating whether the given Node has child nodes or not.
insertBefore(Node node, Node? child) Node
The insertBefore() method of the Node interface inserts a node before a reference node as a child of a specified parent node.
isDefaultNamespace(String? namespace) bool
The isDefaultNamespace() method of the Node interface accepts a namespace URI as an argument. It returns a boolean value that is true if the namespace is the default namespace on the given node and false if not.
isEqualNode(Node? otherNode) bool
The isEqualNode() method of the Node interface tests whether two nodes are equal. Two nodes are equal when they have the same type, defining characteristics (for elements, this would be their ID, number of children, and so forth), its attributes match, and so on. The specific set of data points that must match varies depending on the types of the nodes.
isSameNode(Node? otherNode) bool
The isSameNode() method of the Node interface is a legacy alias the for the === strict equality operator. That is, it tests whether two nodes are the same (in other words, whether they reference the same object).
lookupNamespaceURI(String? prefix) String?
The lookupNamespaceURI() method of the Node interface takes a prefix as parameter and returns the namespace URI associated with it on the given node if found (and null if not).
lookupPrefix(String? namespace) String?
The lookupPrefix() method of the Node interface returns a string containing the prefix for a given namespace URI, if present, and null if not. When multiple prefixes are possible, the first prefix is returned.
normalize() → void
The normalize() method of the Node interface puts the specified node and all of its sub-tree into a normalized form. In a normalized sub-tree, no text nodes in the sub-tree are empty and there are no adjacent text nodes.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
removeChild(Node child) Node
The removeChild() method of the Node interface removes a child node from the DOM and returns the removed node.
removeEventListener(String type, EventListener? callback, [JSAny options]) → void
The removeEventListener() method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener from the target. The event listener to be removed is identified using a combination of the event type, the event listener function itself, and various optional options that may affect the matching process; see Matching event listeners for removal.
inherited
replaceChild(Node node, Node child) Node
The replaceChild() method of the Node interface replaces a child node within the given (parent) node.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited