Node: isSameNode() メソッド

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

isSameNode()Node インターフェイスのメソッドで、 === 厳密等価演算子の古い別名です。 すなわち、 2 つのノードが全く同じであるかどうか(言い換えれば、同じオブジェクトを指しているかどうか)を検査します。

メモ: isSameNode() を使用する必要はありません。 === 厳密等価演算子を使用してください。

構文

js
isSameNode(otherNode)

引数

otherNode

検査対象となる Node です。

メモ: この引数は省略可能ではありませんが、 null に設定することはできます。

返値

論理値で、両ノードが厳密に等しい場合は 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/>`;

結果

仕様書

Specification
DOM
# dom-node-issamenode

ブラウザーの互換性

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
isSameNode

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
Has more compatibility info.

関連情報