Node: isSameNode() メソッド
Baseline
広く利用可能
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。2016年8月以降、すべてのブラウザーで利用可能です。
isSameNode() は Node インターフェイスのメソッドで、 === 厳密等価演算子の古い別名です。
すなわち、 2 つのノードが全く同じであるかどうか(言い換えれば、同じオブジェクトを指しているかどうか)を検査します。
メモ:
isSameNode() を使用する必要はありません。 === 厳密等価演算子を使用してください。
構文
js
isSameNode(otherNode)
引数
返値
論理値で、両ノードが厳密に等しい場合は true、そうでなければ false です。
例
この例では、 3 つの <div> ブロックを作成しています。 1 つ目と 3 つ目は内容と属性が同じであり、 2 つ目は異なっています。このとき、isSameNode() を使って JavaScript でノードを比較した結果は以下のようになります。
HTML
html
<div>最初の要素です。</div>
<div>2 番目の要素です。</div>
<div>最初の要素です。</div>
<p id="output"></p>
JavaScript
js
let output = document.getElementById("output");
let divList = document.getElementsByTagName("div");
output.innerHTML += `div 0 と div 0 は同じか: ${divList[0].isSameNode(
divList[0],
)}<br/>`;
output.innerHTML += `div 0 と div 1 は同じか: ${divList[0].isSameNode(
divList[1],
)}<br/>`;
output.innerHTML += `div 0 と div 2 は同じか: ${divList[0].isSameNode(
divList[2],
)}<br/>`;
結果
仕様書
| 仕様書 |
|---|
| DOM> # dom-node-issamenode> |