recursal/MDN huggingface dataset:
HTMLAnchorElement: toString() メソッド
==================================

**`HTMLAnchorElement.toString()`** は文字列化メソッドで、 URL 全体の入った文字列を返します。 これは、 `HTMLAnchorElement.href` の読み取り専用バージョンです。

構文
--


```js
toString()
```

### 引数

なし。

### 返値

この要素の完全な URL の入った文字列です。

例
-

### アンカー要素で toString を呼び出す


```js
// <a id="myAnchor" href="/ja/docs/HTMLAnchorElement"> 要素が文書にあったとします
const anchor = document.getElementById("myAnchor");
anchor.toString(); // 'https://developer.mozilla.org/ja/docs/HTMLAnchorElement' を返す
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-href-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: hash プロパティ
=============================

**`HTMLAnchorElement.hash`** プロパティは、`'#'` の後に URL のフラグメント識別子が続く文字列を返します。

フラグメントは URL デコードされません。 URL にフラグメント識別子がない場合、このプロパティには空の文字列 `""` が含まれます。

値
-

文字列です。

例
-

### アンカーリンクからハッシュを取得

この HTML があったとします。


```html
<a id="myAnchor" href="/ja/docs/HTMLAnchorElement#例">例</a>
```


このようにすると、アンカーのハッシュを取得することができます。


```js
const anchor = document.getElementById("myAnchor");
anchor.hash; // returns '#例'
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-hash-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: relList プロパティ
================================

**`HTMLAnchorElement.relList`** は読み取り専用プロパティで、`rel` 属性を反映します。 これは生きた `DOMTokenList` で、`<a>` 要素で表されるリソースと現在のドキュメントの間の関係を示すリンク種別のセットが入ります。

このプロパティ自体は読み取り専用です。 つまり、 `DOMTokenList` を別のものに置き換えることはできませんが、その内容は変更できます。

値
-

文字列の生きた `DOMTokenList` です。

例
-


```js
const anchors = document.getElementsByTagName("a");
for (const anchor of anchors) {
  const list = anchor.relList;
  console.log(
    `relList に ${list.length} 個のリンク種別がある新しいアンカーノードが見つかりました。`,
  );
  list.forEach((relValue) => {
    console.log(relValue);
  });
}
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-a-rellist |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* `<area>` および `<link>` の同等のプロパティである `HTMLAreaElement.relList` および `HTMLLinkElement.relList`
* まったく同じリストを文字列の空白区切りトークンとして扱うもの: `HTMLAnchorElement.rel`
HTMLAnchorElement: rel プロパティ
============================

**`HTMLAnchorElement.rel`** プロパティは `rel` 属性を反映しています。これは、空白で区切られたリンク種別のリストの入った文字列であり、`<a>` 要素で表されるリソースと現在の文書との関係を示します。

値
-

文字列です。

例
-


```js
const anchors = document.getElementsByTagName("a");
for (const anchor of anchors) {
  alert(`Rel: ${anchor.rel}`);
}
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-a-rel |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* `<area>` および `<link>` の同等のプロパティである `HTMLAreaElement.rel` および `HTMLLinkElement.rel`
* まったく同じリストをトークンとして扱うもの: `HTMLAnchorElement.relList`
HTMLAnchorElement: username プロパティ
=================================

**`HTMLAnchorElement.username`** プロパティは、ドメイン名の前で指定されたユーザー名の入った文字列です。

値
-

文字列です。

例
-

### アンカーリンクからユーザー名を取得


```js
// <a id="myAnchor" href="https://anonymous:flabada@developer.mozilla.org/ja/docs/HTMLAnchorElement"> 要素が文書にあったとします
const anchor = document.getElementByID("myAnchor");
anchor.username; // 'anonymous' を返す
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-username-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: search プロパティ
===============================

**`HTMLAnchorElement.search`** プロパティは、*クエリー文字列*とも呼ばれる検索文字列、つまり `'?'` とその後に続く URL の引数の入った文字列です。

最新のブラウザーでは、`URLSearchParams` と `URL.searchParams` を提供して、クエリー文字列から引数を簡単に解析できるようにしています。

値
-

文字列です。

例
-

### アンカーリンクから検索文字列を取得


```js
// <a id="myAnchor" href="/ja/docs/HTMLAnchorElement?q=123"> 要素が文書内にあったとします
const anchor = document.getElementById("myAnchor");
anchor.search; // '?q=123' を返す
```

### URLSearchParams を使用した高度な解釈

他にも、 `URLSearchParams` が使われる場面があります。


```js
let params = new URLSearchParams(queryString);
let q = parseInt(params.get("q")); // 数値 123 を返す
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-search-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: protocol プロパティ
=================================

**`HTMLAnchorElement.protocol`** プロパティは、 URL のプロトコルスキームを表す文字列で、最後の `':'` を含みます。

値
-

文字列です。

例
-

### アンカーリンクのプロトコルを取得


```js
// <a id="myAnchor" href="https://developer.mozilla.org/en-US/HTMLAnchorElement"> 要素が文書にあったとします。
const anchor = document.getElementById("myAnchor");
anchor.protocol; // 'https:' を返す
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-protocol-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: hostname プロパティ
=================================

**`HTMLAnchorElement.hostname`** プロパティは、URL のドメインを含む文字列です。

値
-

文字列です。

例
-


```js
// <a id="myAnchor" href="/ja/docs/HTMLAnchorElement"> 要素が文書内にあるとします
const anchor = document.getElementById("myAnchor");
anchor.hostname; // 'developer.mozilla.org' を返す
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-hostname-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: password プロパティ
=================================

**`HTMLAnchorElement.password`** プロパティは、ドメイン名の前で指定されたパスワードが入った文字列です。

先に `username` プロパティを設定せずに設定しようとすると、暗黙のうちに失敗します。

値
-

文字列です。

例
-


```js
// <a id="myAnchor" href="https://anonymous:flabada@developer.mozilla.org/en-US/HTMLAnchorElement"> 要素が文書にあったとします
const anchor = document.getElementByID("myAnchor");
anchor.password; // 'flabada' を返す
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-password-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: href プロパティ
=============================

**`HTMLAnchorElement.href`** は文字列化プロパティで、URL 全体を含む文字列を返し、 href を更新することもできます。

値
-

文字列です。

例
-


```js
// <a id="myAnchor" href="https://developer.mozilla.org/en-US/HTMLAnchorElement"> 要素が文書にあったとします
const anchor = document.getElementById("myAnchor");
anchor.href; // returns 'https://developer.mozilla.org/en-US/HTMLAnchorElement'
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-href-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: download プロパティ
=================================

**`HTMLAnchorElement.download`** プロパティは、文字列で、リンク先リソースをブラウザーに表示するのではなくダウンロードすることを意図していることを示します。値がある場合は、ローカルファイルシステムのリソースのラベル付けに使用する既定のファイル名を指定します。 基になる OS で名前が有効なファイル名でない場合は、ブラウザーが調整します。

**メモ:** この値はダウンロードに使われないかもしれません。 この値により、ダウンロードが行われるかどうかを判別することはできません。

値
-

文字列です。

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-a-download |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
HTMLAnchorElement: origin プロパティ
===============================

**`HTMLAnchorElement.origin`** は読み取り専用プロパティで、表現している URL のオリジンを Unicode シリアル化した文字列です。

すなわち、

* `http` または `https` を使用する URL の場合、スキームの後に `'://'`、ドメイン、`':'`、ポートの順になります。（ポート部分は、明示的に指定されていて、それが既定のポートでない場合に存在します。それぞれの既定のポートは、`80` と `443` です。）
* `file:` スキームを使用する URL の場合、値はブラウザーに依存します。
* `blob:` スキームを使用する URL の場合、`blob:` に続く URL のオリジンです。 例えば、`"blob:https://mozilla.org"` では `"https://mozilla.org"` です。
値
-

文字列です。

例
-


```js
// <a id="myAnchor" href="https://developer.mozilla.org/en-US/HTMLAnchorElement"> 要素が文書にあったとします
const anchor = document.getElementById("myAnchor");
anchor.origin; // 'https://developer.mozilla.org' を返す
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-origin-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: host プロパティ
=============================

**`HTMLAnchorElement.host`** プロパティは、ホストを含む文字列です。すなわち、*ホスト名*の後に、 URL の*ポート*が空でない場合は、`':'`、および URL の*ポート*が続きます。

値
-

文字列です。

例
-


```js
const anchor = document.createElement("a");

anchor.href = "https://developer.mozilla.org/en-US/HTMLAnchorElement";
anchor.host === "developer.mozilla.org";

anchor.href = "https://developer.mozilla.org:443/en-US/HTMLAnchorElement";
anchor.host === "developer.mozilla.org";
// The port number is not included because 443 is the scheme's default port

anchor.href = "https://developer.mozilla.org:4097/en-US/HTMLAnchorElement";
anchor.host === "developer.mozilla.org:4097";
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-host-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
HTMLAnchorElement: port プロパティ
=============================

**`HTMLAnchorElement.port`** プロパティは、URL のポート番号が入った文字列です。 URL に明示的にポート番号が含まれていない場合は、`''` に設定されます。

値
-

文字列です。

例
-

### アンカーリンクからポート番号を取得


```js
// <a id="myAnchor" href="https://developer.mozilla.org:443/ja/docs/HTMLAnchorElement"> 要素が文書にあったとします。
const anchor = document.getElementByID("myAnchor");
anchor.port; // '443' を返す
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-hyperlink-port-dev |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

関連情報
----

* 所属先の `HTMLAnchorElement` インターフェイス
BarcodeDetector.detect()
========================

**安全なコンテキスト用:** この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

**Experimental:** **これは実験的な機能です。**  
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

**`detect()`** は `BarcodeDetector` インターフェイスのメソッドで、画像内に検出されたバーコードの配列 (`Array`) で履行されるプロミス (`Promise`) を返します。

構文
--


```js
var detectedBarcode = BarcodeDetector.detect(ImageBitmapSource);
```

### 引数

*image*

引数として `ImageBitmapSource` を受け取ります。これは要素、画像型の `Blob`、`ImageData`オブジェクトの何れかです。

### 返値

以下のプロパティを持つ `detectedBarcode` オブジェクトの配列で履行される `Promise` を返します。

* `boundingBox`: `DOMRectReadOnly` で、画像内にある検出されたバーコードの範囲を表す矩形の寸法を返します。
* `cornerPoints`: 検出されたバーコードの四隅の点の、画像に対する X および Y 座標で、左上から時計回りに算出されます。画像内の遠近感の歪みにより、正方形にならない場合があります。
* `format`: 検出されたバーコードの形式。（形式の完全な一覧についてはバーコード検出 API 概要ページを参照してください。）
* `rawValue`: バーコードデータをデコードした文字列です。
### 例外

`TypeError`

引数が指定されていないか、 `type` が `ImageBitmapSource` のものでない場合。

例
-

この例では、 `detect()` メソッドを使用して、与えられた画像内のバーコードを検出しています。これらは繰り返し処理され、バーコードのデータはコンソールに記録されます。


```js
barcodeDetector.detect(imageEl)
  .then(barcodes => {
    barcodes.forEach(barcode => console.log(barcode.rawData));
  }
  .catch(err => {
    console.log(err);
  })
```

仕様書
---

| Specification |
| --- |
| Accelerated Shape Detection in Images # dom-barcodedetector-detect |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
BarcodeDetector()
=================

**安全なコンテキスト用:** この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

**Experimental:** **これは実験的な機能です。**  
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

**`BarcodeDetector()`** コンストラクターは、線形および二次元バーコードを画像から検出する新しい `BarcodeDetector` （検出器）オブジェクトを生成します。

構文
--


```js
new BarcodeDetector();
```

### 引数

*barcodeDetectorOptions* 省略可

後続の `detect()` 呼び出しで検索する一連の `BarcodeFormats` を含むオプションオブジェクトです。オプションは以下の通りです。

* `formats`: バーコードの形式を文字列で表した `Array` です。対応している形式の完全な一覧はバーコード検出 API の概要ページを参照してください。

例
-

この例では、対応している形式を指定して新しいバーコード検出器オブジェクトを作成し、ブラウザーの互換性をテストしています。


```js
// 新しい検出器を生成
var barcodeDetector = new BarcodeDetector({
  formats: ["code\_39", "codabar", "ean\_13"],
});

// 互換性のチェック
if (barcodeDetector) {
  console.log("Barcode Detector に対応しています。");
} else {
  console.log("Barcode Detector はこのブラウザーでは対応していません。");
}
```

仕様書
---

| Specification |
| --- |
| Accelerated Shape Detection in Images # dom-barcodedetector-barcodedetector |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
BarcodeDetector.getSupportedFormats()
=====================================

**安全なコンテキスト用:** この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

**Experimental:** **これは実験的な機能です。**  
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

**`getSupportedFormats()`** は `BarcodeDetector` インターフェイスの静的メソッドで、対応しているバーコード形式の種類の配列 (`Array`) で履行されるプロミス (`Promise`) を返します。

構文
--


```js
var supportedFormats = BarcodeDetector.getSupportedFormats();
```

### 引数

このメソッドは引数を受け取りません。

### 返値

対応しているバーコード形式の種類の配列 (`Array`) で履行される `Promise` を返します。

### 例外

例外は発生しません。

例
-

次の例では、静的メソッド `getSupportFormat()` を呼び出し、その結果をコンソールにログ出力しています。


```js
// 対応している型をチェック
BarcodeDetector.getSupportedFormats().then((supportedFormats) => {
  supportedFormats.forEach((format) => console.log(format));
});
```

仕様書
---

| Specification |
| --- |
| Accelerated Shape Detection in Images # dom-barcodedetector-getsupportedformats |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
NamedNodeMap.removeNamedItemNS()
================================

**`removedNamedItemNS()`** は `NamedNodeMap` インターフェイスのメソッドで、指定された名前空間とローカル名に対応する `Attr` をこのマップから取り除きます。

構文
--


```js
removeNamedItem(namespace, localName);
```

### 引数

`namespace`

このマップから取り除く属性の名前空間です。

**警告:** `namespace` は名前空間の URI であり、接頭辞ではありません。

`localName`

このマップから取り除く属性のローカル名です。

### 返値

取り除かれた `Attr` です。

### 例外

`NotFoundError` `DOMException`

指定された名前空間とローカル名の属性がなかった場合に発生します。

例
-
```

<pre></pre>
```



```js
const parser = new DOMParser();
const xmlString =
  '<warning ob:one="test" xmlns:ob="http://www.example.com/ob">Beware!</warning>';
const doc = parser.parseFromString(xmlString, "application/xml");

const pre = document.getElementsByTagName("pre")[0];
const warning = doc.getElementsByTagName("warning")[0];
const attrMap = warning.attributes;

let result = `The 'ob:one' attribute initially contains '${attrMap["ob:one"].value}'.\n`;

result += "We remove it.\n\n";
attrMap.removeNamedItemNS("http://www.example.com/ob", "one");

if (attrMap["ob:one"]) {
  result += "And 'ob:one' still exists.";
} else {
  result += "And 'ob:one' is no more to be found.";
}

pre.textContent = result;
```

仕様書
---

| Specification |
| --- |
| DOM Standard # dom-namednodemap-removenameditemns |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
NamedNodeMap.setNamedItem()
===========================

**`setNamedItem()`** は `NamedNodeMap` インターフェイスのメソッドで、名前によって識別される属性 (`Attr`) をこのマップに設定します。
 すでに同じ名前の `Attr` がこのマップに存在した場合は、*置き換えます*。

構文
--


```js
setNamedItem(attr);
```

### 引数

`attr`

このマップに挿入する属性です。

### 返値

置き換えた場合は古い属性を返します。属性が新規の場合は `null` です。

### 例外

`InUseAttributeError` `DOMException`

この属性が他のマップに所属していた場合に発生します。

例
-


```html
<span one="one" two="two"></span>
<pre test="testValue"></pre>
```



```js
const span = document.getElementsByTagName("span")[0];
const pre = document.getElementsByTagName("pre")[0];
const attrMap = pre.attributes;

let result = `The '<pre>' element initially contains ${attrMap.length} attributes.\n\n`;

result += "We remove `one` from `<span>` and adds it to `<pre>`.\n";
const one = span.attributes.removeNamedItem("one");
attrMap.setNamedItem(one);
result += `The '<pre>' element now contains ${pre.attributes.length} attributes.\n\n`;

result += "We get 'two' from '<span>' and try to adds it to '<pre>'.\n";
const two = span.attributes.getNamedItem("two");
try {
  attrMap.setNamedItem(two);
} catch (e) {
  result += `An exception has been raised: ${e.name}.\n`;
}

pre.textContent = result;
```

仕様書
---

| Specification |
| --- |
| DOM Standard # dom-namednodemap-setnameditem |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
NamedNodeMap.getNamedItemNS()
=============================

**`getNamedItemNS()`** は `NamedNodeMap` インターフェイスのメソッドで、指定された名前空間の指定されたローカル名に対応する `Attr` を返します。対応する属性がない場合は `null` を返します。

構文
--


```js
getNamedItemNS(namespace, localName);
```

### 引数

`namespace`

文字列で、希望する属性の名前空間 URI です。

**警告:** `namespace` は名前空間の URI であり、接頭辞ではありません。

`localName`

文字列で、希望する属性のローカル名です。

### 返値

引数で与えられた名前空間とローカル名に対応する `Attr` です。見つからない場合は `null` です。

例
-
```

<pre></pre>
```



```js
const parser = new DOMParser();
const xmlString =
  '<warning ob:one="test" xmlns:ob="http://www.example.com/ob">Beware!</warning>';
const doc = parser.parseFromString(xmlString, "application/xml");

const pre = document.getElementsByTagName("pre")[0];
const warning = doc.getElementsByTagName("warning")[0];

const attrMap = warning.attributes;

pre.textContent = `The 'ob:one' attribute contains: ${
 attrMap.getNamedItemNS("http://www.example.com/ob", "one").value
}.`;
```

仕様書
---

| Specification |
| --- |
| DOM Standard # dom-namednodemap-getnameditemns |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
NamedNodeMap.item()
===================

**`item()`** は `NamedNodeMap` インターフェイスのメソッドで、マップ内の指定された位置にある項目を返します。

**メモ:** このメソッドは、 `[]` 演算子の構文を使用した場合にも呼び出されます。
 そのため `i` が数値の場合、 `myMap[i]` は `myMap.item(i)` と同じです。


構文
--


```js
item(index);
[index];
```

### 引数

`index`

返したい項目の位置を表す数値です。

### 返値

`Attr` です。数値がマップの `length` 以上の場合は `null` です。

例
-


```html
<pre zero="test" one="test" two="test"></pre>
```



```js
const pre = document.getElementsByTagName("pre")[0];
const attrMap = pre.attributes;

pre.textContent = `The attribute map contains:
0: ${attrMap.item(0).name}
1: ${attrMap[1].name}
2: ${attrMap.item(2).name}`;
```

仕様書
---

| Specification |
| --- |
| DOM Standard # dom-namednodemap-item |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
NamedNodeMap.removeNamedItem()
==============================

**`removeNamedItem()`** は `NamedNodeMap` インターフェイスのメソッドで、指定された名前に対応する `Attr` をマップから取り除きます。

構文
--


```js
removeNamedItem(attrName);
```

### 引数

`attrName`

マップから取り除く属性の名前。

### 返値

取り除かれた `Attr`。

### 例外

`NotFoundError` `DOMException`

指定された名前の属性がなかった場合に発生します。

例
-


```html
<pre test="testValue"></pre>
```



```js
const pre = document.getElementsByTagName("pre")[0];
const attrMap = pre.attributes;

let result = `The 'test' attribute initially contains '${attrMap["test"].value}'.\n`;

result += "We remove it.\n\n";
attrMap.removeNamedItem("test");

if (attrMap.getNamedItem("test")) {
  result += "And 'test' still exists.";
} else {
  result += "And 'test' is no more to be found.";
}

pre.textContent = result;
```

仕様書
---

| Specification |
| --- |
| DOM Standard # dom-namednodemap-removenameditem |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
NamedNodeMap.setNamedItemNS()
=============================

**`setNamedItemNS()`** は `NamedNodeMap` インターフェイスのメソッドで、このマップに名前で識別される属性 (`Attr`) を設定します。
 すでに同じ名前の `Attr` がこのマップに存在した場合は、*置き換えます*。

**メモ:** このメソッドは `setNamedItem()` の別名であり、入れ替えて使用することができます。

構文
--


```js
setNamedItemNS(attr);
```

### 引数

`attr`

このマップに挿入する属性です。

### 返値

置き換えた場合は古い属性を返します。属性が新規の場合は `null` です。

### 例外

`InUseAttributeError` `DOMException`

この属性が他のマップに所属していた場合に発生します。

例
-


```html
<span ob:one="one"></span>
<pre></pre>
```



```js
const parser = new DOMParser();
// ob:one in <span> is not in a namespace, while ob:one in <warning>, is.
const xmlString =
  '<warning ob:one="test" xmlns:ob="http://www.example.com/ob">Beware!</warning>';
const doc = parser.parseFromString(xmlString, "application/xml");

const span = document.getElementsByTagName("span")[0];
const pre = document.getElementsByTagName("pre")[0];
const warning = doc.getElementsByTagName("warning")[0];
const attrMap = span.attributes;

let result = `The '<span>' element initially contains ${attrMap.length} attribute.\n\n`;

result += "We remove `one` from '<span>' and adds it to '<pre>'.\n";
const one = warning.attributes.removeNamedItemNS(
  "http://www.example.com/ob",
  "one",
);
attrMap.setNamedItemNS(one);
result += `The '<span>' element now contains ${span.attributes.length} attributes:\n\n`;
result += "Prefix\tLocal name\tQualified name\n";
result += "=========================================\n";

for (const attr of attrMap) {
  result += `${attr.prefix}\t${attr.localName}\t\t${attr.name}\n`;
}

pre.textContent = result;
```

仕様書
---

| Specification |
| --- |
| DOM Standard # dom-namednodemap-setnameditemns |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
NamedNodeMap.getNamedItem()
===========================

**`getNamedItem()`** は `NamedNodeMap` インターフェイスのメソッドで、指定された名前に対応する `Attr` を返します。対応する属性がない場合は `null` を返します。

**メモ:** このメソッドは、 `[]` 演算子の構文を使用した場合にも呼び出されます。
 そのため `str` が文字列の場合、 `myMap[str]` は `myMap.getNamedItem(str)` と同じです。


構文
--


```js
getNamedItem(name);
[name];
```

### 引数

`name`

文字列で、希望する属性の名前です。

### 返値

引数で指定された `name` に対応する `Attr` です。見つからない場合は `null` です。

例
-


```html
<pre test="test"></pre>
```



```js
const pre = document.getElementsByTagName("pre")[0];
const attrMap = pre.attributes;

let result = `The 'test' attribute contains ${
 attrMap.getNamedItem("test").value
}\n`;
if (attrMap["boum"]) {
  result += "And 'boum' has been found.";
} else {
  result += "And 'boum' has not been found.";
}

pre.textContent = result;
```

仕様書
---

| Specification |
| --- |
| DOM Standard # dom-namednodemap-getnameditem |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
NamedNodeMap.length
===================

**`length`** は `NamedNodeMap` インターフェイスの読み取り専用プロパティで、このマップに格納されているオブジェクトの数を示します。

値
-

このマップにあるオブジェクトの数を示す数値です。

例
-


```html
<pre zero="test" one="test" two="test"></pre>
```



```js
const pre = document.getElementsByTagName("pre")[0];
const attrMap = pre.attributes;

let result = `The 'test' attribute contains ${attrMap.length} attributes.\n`;

pre.textContent = result;
```

仕様書
---

| Specification |
| --- |
| DOM Standard # dom-namednodemap-length |

ブラウザーの互換性
---------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.