W3cubDocs

/Web APIs

Node: isSameNode() method

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

Note: There is no need to use isSameNode(); instead use the === strict equality operator.

Syntax

js

isSameNode(otherNode)

Parameters

otherNode

The Node to test against.

Note: This parameter is not optional, but can be set to null.

Return value

A boolean value that is true if both nodes are strictly equal, false if not.

Example

In this example, we create three <div> blocks. The first and third have the same contents and attributes, while the second is different. Then we run some JavaScript to compare the nodes using isSameNode() and output the results.

HTML

html

<div>This is the first element.</div>
<div>This is the second element.</div>
<div>This is the first element.</div>

<p id="output"></p>

JavaScript

js

let output = document.getElementById("output");
let divList = document.getElementsByTagName("div");

output.innerHTML += `div 0 same as div 0: ${divList[0].isSameNode(
  divList[0],
)}<br/>`;
output.innerHTML += `div 0 same as div 1: ${divList[0].isSameNode(
  divList[1],
)}<br/>`;
output.innerHTML += `div 0 same as div 2: ${divList[0].isSameNode(
  divList[2],
)}<br/>`;

Results

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
isSameNode 1 12 481–10 9 ≤12.1 3 4.4 18 484–10 ≤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/isSameNode