title | short-title | slug | page-type | browser-compat |
---|---|---|---|---|
Node: isSameNode() method |
isSameNode() |
Web/API/Node/isSameNode |
web-api-instance-method |
api.Node.isSameNode |
{{APIRef("DOM")}}
The isSameNode()
method of the {{domxref("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.
isSameNode(otherNode)
otherNode
- : The {{domxref("Node")}} to test against.
[!NOTE] This parameter is not optional, but can be set to
null
.
- : The {{domxref("Node")}} to test against.
A boolean value that is true
if both nodes are strictly equal, false
if not.
In this example, we create three {{HTMLElement("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.
<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>
#output {
width: 440px;
border: 2px solid black;
border-radius: 5px;
padding: 10px;
margin-top: 20px;
display: block;
}
const output = document.getElementById("output");
const divList = document.getElementsByTagName("div");
output.innerText += `div 0 same as div 0: ${divList[0].isSameNode(
divList[0],
)}\n`;
output.innerText += `div 0 same as div 1: ${divList[0].isSameNode(
divList[1],
)}\n`;
output.innerText += `div 0 same as div 2: ${divList[0].isSameNode(
divList[2],
)}\n`;
{{ EmbedLiveSample('Example', "100%", "205") }}
{{Specifications}}
{{Compat}}
- {{domxref("Node.isEqualNode()")}}