recursal/MDN huggingface dataset:
HTMLAreaElement: pathname プロパティ
===============================

**`HTMLAreaElement.pathname`** プロパティは、最初の `'/'` とその後に続く URL のパスが入った文字列（または、パスがない場合は空の文字列）です。

値
-

文字列です。

例
-


```js
// <area id="myArea" href="/ja/docs/HTMLAreaElement"> 要素が文書にあったとします
const area = document.getElementById("myArea");
area.pathname; // '/ja/docs/HTMLAreaElement' を返す
```

仕様書
---

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

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

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

関連情報
----

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

**`HTMLAreaElement.referrerPolicy`** プロパティは、リソースの取得時に送信されるリファラーを定義する `<area>` 要素の HTML `referrerpolicy` 属性を反映します。

値
-

文字列で、以下のうちの一つです。

`no-referrer`

`Referer` ヘッダーは完全に省略されます。リクエストと共に送信されるリファラー情報はありません。

`no-referrer-when-downgrade`

プロトコルのセキュリティレベルが変わらない場合（例: HTTP→HTTP、HTTPS→HTTPS）にはリファラーとして URL を送信し、セキュリティレベルの低い宛先（例: HTTPS→HTTP）には送信しません。

`origin`

 どのような場合でも、この文書のオリジンだけをリファラーとして送信します。
 文書 `https://example.com/page.html` はリファラーとして `https://example.com/` を送ります。


`origin-when-cross-origin`

同一オリジンリクエストを行う場合は完全な URL を送信し、それ以外の場合は文書のオリジンのみを送信します。

`same-origin`

リファラーは同一サイトオリジンには送信されますが、オリジン間リクエストではリファラー情報が送信されません。

`strict-origin`

プロトコルのセキュリティレベルが変わらない場合（例: HTTPS→HTTPS）だけ、文書のオリジンをリファラーとして送信し、セキュリティレベルの低い宛先（例: HTTPS→HTTP）には送信しないようにします。

`strict-origin-when-cross-origin` (default)

これは、ポリシーが指定されていない場合のユーザーエージェントの既定の動作です。同一オリジンリクエストを行う場合は完全な URL を送信し、プロトコルのセキュリティレベルが変わらない場合はオリジンのみを送信し（例: HTTPS→HTTPS）、セキュリティレベルの低い宛先にはヘッダーを送信しません（例: HTTPS→HTTP）。

`unsafe-url`

 同一オリジンまたはオリジン間リクエストを実行するときに、完全な URL を送信します。このポリシーは、 TLS で保護されたリソースから安全でないオリジンへのオリジンとパスを漏洩します。
 この設定の影響を慎重に検討してください。


例
-


```html
<img usemap="#mapAround" width="100" height="100" src="/img/logo@2x.png" />
<map id="myMap" name="mapAround" />>
```



```js
const elt = document.createElement("area");
elt.href = "/img2.png";
elt.shape = "rect";
elt.referrerPolicy = "no-referrer";
elt.coords = "0,0,100,100";
const map = document.getElementById("myMap");

map.appendChild(elt);
// クリックしても、領域のリンクはリファラーヘッダーを送信しません。
```

仕様書
---

| Specification |
| --- |
| HTML Standard # dom-area-referrerpolicy |

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

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

関連情報
----

* `HTMLImageElement.referrerPolicy`,
 `HTMLAnchorElement.referrerPolicy`,
 `HTMLIFrameElement.referrerPolicy`
HTMLAreaElement: hash プロパティ
===========================

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

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

値
-

文字列です。

例
-

### エリアのリンクからハッシュを取得

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


```html
<map name="infographic">
  <area
 id="mdn-circle"
 shape="circle"
 coords="130,136,60"
 href="https://developer.mozilla.org/#ExampleSection"
 alt="MDN" />
</map>

<img
 usemap="#infographic"
 src="/media/examples/mdn-info.png"
 alt="MDN infographic" />
```


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


```js
const area = document.getElementById("mdn-circle");
area.hash; // returns '#ExampleSection'
```

仕様書
---

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

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

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

関連情報
----

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

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

すなわち、

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

文字列です。

例
-


```js
// <area id="myArea" href="https://developer.mozilla.org/en-US/HTMLAreaElement"> 要素が文書にあったとします
const area = document.getElementById("myArea");
area.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.

関連情報
----

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

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

値
-

文字列です。

例
-


```js
const areas = document.getElementsByTagName("area");
for (const area of areas) {
  console.log(`Rel: ${area.rel}`);
}
```

仕様書
---

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

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

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

関連情報
----

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

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

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

値
-

文字列です。

例
-


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

仕様書
---

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

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

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

関連情報
----

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

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

値
-

`area` 要素に関連付けられた URL のドメインを含む文字列です。
 セッターとゲッターの両方として使用することができます。

例
-


```html
<textarea id="log" rows="4" cols="100"></textarea>
<map name="infographic">
  <area
 id="area1"
 shape="rect"
 coords="184,6,253,27"
 href="/ja/docs/HTMLAreaElement"
 target="\_blank"
 alt="Mozilla" />
  <area
 id="area2"
 shape="circle"
 coords="130,136,60"
 href="https://coolexample.com/"
 target="\_blank"
 alt="MDN" />
</map>
```



```js
// 要素が文書内にあったとします
const area1 = document.getElementById("area1");
const area2 = document.getElementById("area2");

const log = document.getElementById("log");
log.textContent = `area1 hostname: ${area1.hostname} \n`; // 'developer.mozilla.org'
log.textContent += `area2 hostname: ${area2.hostname}`; // 'coolexample.com'
```

仕様書
---

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

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

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

関連情報
----

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

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

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

値
-

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

例
-


```js
const areas = document.getElementsByTagName("area");
const length = areas.length;

for (const area of areas) {
  console.log("新しい領域が見つかりました。");
  area.relList.forEach((relValue) => {
    console.log(relValue);
  });
}
```

仕様書
---

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

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

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

関連情報
----

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

**`renderedBuffer`** は `OfflineAudioCompletionEvent` インターフェイスの読み取り専用プロパティで、 `OfflineAudioContext` の処理結果が入った `AudioBuffer` を返します。

値
-

`AudioBuffer` です。

仕様書
---

| Specification |
| --- |
| Web Audio API # dom-offlineaudiocompletionevent-renderedbuffer |

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

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

**`OfflineAudioCompletionEvent()`** はウェブオーディオ API のコンストラクターで、新しい `OfflineAudioCompletionEvent` オブジェクトを生成します。

**メモ:** 一般的にコンストラクターを手動で使用することはないでしょう。
 `OfflineAudioCompletionEvent` イベントは、古い理由のため `OfflineAudioContext` インスタンスに配信されます。


構文
--


```js
new OfflineAudioCompletionEvent(type, options)
```

### 引数

`type`

 このイベントの名前を示す文字列です。
 大文字小文字を区別します。ブラウザーは `complete` に設定します。


`options`

オブジェクトで、 *`Event()` で定義されているプロパティに加え*、以下のプロパティを持つことができます。

`renderedBuffer`

レンダリングされた音声データを含む `AudioBuffer` です。


### 返値

新しい `OfflineAudioCompletionEvent` オブジェクト。

仕様書
---

| Specification |
| --- |
| Web Audio API # dom-offlineaudiocompletionevent-offlineaudiocompletionevent |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
BluetoothUUID: getService() 静的メソッド
==================================

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

`BluetoothUUID` インターフェイスの静的メソッド **`getService()`** は、名前、もしくは 16 ビットまたは 32 ビットの UUID エイリアスを受け取り、登録されたサービスを表す 128 ビットの UUID を返します。

構文
--


```js
BluetoothUUID.getService(name)
```

### 引数

`name`

サービスの名前を表す文字列です。

### 返値

128 ビットの UUID です。

### 例外

`TypeError`

`name` がレジストリーで見つからないとき投げられます。

例
-

以下の例では、`device_information` という名前のサービスを表す UUID が返され、コンソールに出力されます。


```js
let result = BluetoothUUID.getService("device\_information");
console.log(result); // "0000180a-0000-1000-8000-00805f9b34fb"
```

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothuuid-getservice |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
BluetoothUUID: canonicalUUID() 静的メソッド
=====================================

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

`BluetoothUUID` インターフェイスの静的メソッド **`canonicalUUID()`** は、16 ビットまたは 32 ビットの UUID エイリアスを受け取り、128 ビットの UUID を返します。

構文
--


```js
BluetoothUUID.canonicalUUID(alias)
```

### 引数

`alias`

16 ビットまたは 32 ビットの UUID エイリアスを表す文字列です。

### 返値

128 ビットの UUID です。

例
-

以下の例では、エイリアス `0x110A` で表される UUID が返され、コンソールに出力されます。


```js
let result = BluetoothUUID.canonicalUUID("0x110A");
console.log(result); // "0000110a-0000-1000-8000-00805f9b34fb"
```

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothuuid-canonicaluuid |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
BluetoothUUID: getCharacteristic() 静的メソッド
=========================================

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

`BluetoothUUID` インターフェイスの静的メソッド **`getCharacteristic()`** は、名前、もしくは 16 ビットまたは 32 ビットの UUID エイリアスを受け取り、登録されたキャラクタリスティックを表す 128 ビットの UUID を返します。

構文
--


```js
BluetoothUUID.getCharacteristic(name)
```

### 引数

`name`

キャラクタリスティックの名前を表す文字列です。

### 返値

128 ビットの UUID です。

### 例外

`TypeError`

`name` がレジストリーで見つからないとき投げられます。

例
-

以下の例では、`apparent_wind_direction` という名前のキャラクタリスティックを表す UUID が返され、コンソールに出力されます。


```js
let result = BluetoothUUID.getCharacteristic("apparent\_wind\_direction");
console.log(result); // "00002a73-0000-1000-8000-00805f9b34fb"
```

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothuuid-getcharacteristic |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
BluetoothUUID: getDescriptor() 静的メソッド
=====================================

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

`BluetoothUUID` インターフェイスの静的メソッド **`getDescriptor()`** は、名前、もしくは 16 ビットまたは 32 ビットの UUID エイリアスを受け取り、登録されたディスクリプターを表す 128 ビットの UUID を返します。

構文
--


```js
BluetoothUUID.getDescriptor(name)
```

### 引数

`name`

ディスクリプターの名前を表す文字列です。

### 返値

128 ビットの UUID です。

### 例外

`TypeError`

`name` がレジストリーで見つからないとき投げられます。

例
-

以下の例では、`time_trigger_setting` という名前のディスクリプターを表す UUID が返され、コンソールに出力されます。


```js
let result = BluetoothUUID.getDescriptor("time\_trigger\_setting");
console.log(result); // "0000290e-0000-1000-8000-00805f9b34fb"
```

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothuuid-getdescriptor |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
AmbientLightSensor: AmbientLightSensor() コンストラクター
=================================================

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

**`AmbientLightSensor()`** コンストラクターは、現在の光レベル、すなわちホストデバイス周辺の環境光の照度を返す新しい `AmbientLightSensor` オブジェクトを生成します。

構文
--


```js
new AmbientLightSensor()
new AmbientLightSensor(options)
```

### 引数

`options` 省略可

現在、1 個のオプションのみに対応しています。

`frequency`

1 秒間にサンプルを何回取得したいかであり、`reading` イベントが呼ばれる 1 秒あたりの回数になります。整数または小数が使用でき、小数は 1 秒に 1 回未満の頻度を設定するのに用います。実際の取得頻度はデバイスハードウェアに依存するので、要求値より少なくなる可能性があります。


### 例外

`SecurityError` `DOMException`

この機能の使用が Permissions Policy によりブロックされまし

仕様書
---

| Specification |
| --- |
| Ambient Light Sensor # dom-ambientlightsensor-ambientlightsensor |

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

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

関連情報
----

* `reading` イベント
AmbientLightSensor: illuminance プロパティ
=====================================

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

`AmbientLightSensor` インターフェイスの **`illuminance`** プロパティは、ホストデバイス周辺の環境光のルクス単位のレベルを、現在の光レベルとして返します。

値
-

現在のルクス単位の光レベルを表す `Number` です。

例
-


```js
if ("AmbientLightSensor" in window) {
  const sensor = new AmbientLightSensor();
  sensor.addEventListener("reading", (event) => {
    console.log("現在の光レベル:", sensor.illuminance);
  });
  sensor.addEventListener("error", (event) => {
    console.log(event.error.name, event.error.message);
  });
  sensor.start();
}
```

仕様書
---

| Specification |
| --- |
| Ambient Light Sensor # ambient-light-sensor-reading-attribute |

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

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

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

**`containerId`** は `TaskAttributionTiming` インターフェイスの読み取り専用プロパティで、コンテナーの `id` 属性を返します。コンテナーは、全体として長いタスクに関係している iframe、embed、object などです。

値
-

文字列で、コンテナーの `id` 属性が入ります。

仕様書
---

| Specification |
| --- |
| Long Tasks API # dom-taskattributiontiming-containerid |

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

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

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

**`containerName`** は `TaskAttributionTiming` インターフェイスの読み取り専用プロパティで、コンテナーの `name` 属性を返します。コンテナーは、全体として長いタスクに関係している iframe、embed、object などです。

値
-

文字列で、コンテナーの HTML における `name` 属性（`<iframe name="myIframe"` や `<object name="myObject"` など）が入ります。

仕様書
---

| Specification |
| --- |
| Long Tasks API # dom-taskattributiontiming-containername |

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

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

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

**`containerType`** は `TaskAttributionTiming` インターフェイスの読み取り専用プロパティで、フレームコンテナーの修理（`iframe`、`embed`、`object` のいずれか）を返します。

値
-

文字列で、コンテナーの種類（`iframe`、`embed`、`object` のいずれか）が入ります。種類が特定できなかった場合は、 `window` が返されます。

仕様書
---

| Specification |
| --- |
| Long Tasks API # dom-taskattributiontiming-containertype |

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

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

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

**`containerSrc`** は `TaskAttributionTiming` インターフェイスの読み取り専用プロパティで、コンテナーの `src` 属性を返します。コンテナーは、全体として長いタスクに関係している iframe、embed、object などです。

値
-

文字列で、コンテナーの `src` 属性（`<iframe src="url.html"` など）が入ります。

仕様書
---

| Specification |
| --- |
| Long Tasks API # dom-taskattributiontiming-containersrc |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
TaskAttributionTiming: toJSON() メソッド
====================================

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

**`toJSON()`** は `TaskAttributionTiming` インターフェイスのメソッドで、シリアライザーです。これは `TaskAttributionTiming` オブジェクトの JSON 表現を返します。

構文
--


```js
toJSON()
```

### 引数

なし。

### 返値

`JSON` オブジェクトで、 `TaskAttributionTiming` オブジェクトをシリアライズしたものです。

例
-

### toJSON メソッドの使用

この例では、 `entry.toJSON()` を呼び出すと、`TaskAttributionTiming` オブジェクトの JSON 表現が返されます。


```js
const observer = new PerformanceObserver((list) => {
  list.getEntries().forEach((entry) => {
    console.log(entry.toJSON());
  });
});

observer.observe({ type: "taskattribution", buffered: true });
```


次のような JSON オブジェクトをログ出力します。


```json
{
  "name": "unknown",
  "entryType": "taskattribution",
  "startTime": 0,
  "duration": 0,
  "containerType": "window",
  "containerSrc": "",
  "containerId": "",
  "containerName": ""
}
```


JSON 文字列を取得するのであれば、直接 `JSON.stringify(entry)` を使用することができます。これは自動的に `toJSON()` を呼び出します。

仕様書
---

| Specification |
| --- |
| Long Tasks API # dom-taskattributiontiming-tojson |

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

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

関連情報
----

* `JSON`
NDEFMessage.records
===================

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

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

`records` は `NDEFMessage` インターフェイスのプロパティで、 NDEF メッセージに現れる `NDEFRecord` のリストを表します。

値
-

`NDEFRecord` オブジェクトのリストで、メッセージに記録されたデータを表します。

例
-

次の例は、 NDEF メッセージの内容を読み取る方法を示しています。最初に `onreading` のイベントハンドラーをセットアップし、ここに `NDEFReadingEvent` のインスタンスが渡されます。 `NDEFMessage` オブジェクトが `NDEFReadingEvent.message` から返されます。このオブジェクトは `message.records` をループして、メッセージの種類に基づいて各レコードを処理します。 data メンバーは `DataView` であり、 UTF-16 でエンコードされたデータを扱うことができます。


```js
ndefReaderInst.onreading = (event) => {
  const ndefMessage = event.message;
  for (const record of ndefMessage.records) {
    console.log("Record type: " + record.recordType);
    console.log("MIME type: " + record.mediaType);
    console.log("Record id: " + record.id);
    switch (record.recordType) {
      case "text":
        // TODO: Read text record with record data, lang, and encoding.
        break;
      case "url":
        // TODO: Read URL record with record data.
        break;
      default:
      // TODO: Handle other records with record data.
    }
  }
};
```

仕様書
---

| Specification |
| --- |
| Web NFC API # dom-ndefmessage-records |

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

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

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

**`NDEFMessage()`** コンストラクターは新しい `NDEFMessage` オブジェクトを生成し、指定された NDEF レコードで初期化します。

構文
--


```js
new NDEFMessage(records);
```

### 引数

`records`

以下のメンバーを持つオブジェクトの配列です。

`data` 省略可

転送されるデータが入ります。文字列、`BufferSource`、ネストされたレコードの配列のいずれかです。

`encoding` 省略可

文字列で、レコードのエンコーディングを指定します。

`id` 省略可

レコードの開発者が定義する識別子です。

`lang` 省略可

RFC 5646: Tags for Identifying Languages （BCP 47 とも呼ばれる）による有効な言語タグです。

`mediaType` 省略可

有効な MIME タイプです。

`recordType`

`data` に格納されているデータの種類を示す文字列です。以下の値のいずれかでなければなりません。

`"absolute-url"`

データの絶対 URL です。

`"empty"`

空の `NDEFRecord` です。

`"mime"`

有効な MIME タイプです。

`"smart-poster"`

NDEF-SMARTPOSTER 仕様書で定義されているようなスマートポスターです。

`"text"`

NDEF-TEXT 仕様書で定義されているようなテキストです。

`"unknown"`

レコードの種類が不明です。

`"URL"`

NDEF-URI 仕様書で定義されているような URL です。


仕様書
---

| Specification |
| --- |
| Web NFC API # dom-ndefmessage-constructor |

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

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

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

`FileSystemDirectoryHandle` インターフェイスの **`getDirectoryHandle()`** メソッドは、このメソッドが呼ばれたディレクトリーハンドル内の指定した名前のサブディレクトリーを表す `FileSystemDirectoryHandle` を返します。

構文
--


```js
getDirectoryHandle(name)
getDirectoryHandle(name, options)
```

### 引数

`name`

取得したいサブディレクトリーの `FileSystemHandle.name` を表す文字列です。

`options` 省略可

取得するサブディレクトリーに関するオプションを持つオブジェクトで、省略可能です。以下のオプションがあります。

`create`

`boolean` 値で、デフォルトは `false` です。`true` に設定すると、ディレクトリーが見つからない場合、指定した名前のディレクトリーが作成されて返されます。


### 返値

`FileSystemDirectoryHandle` で解決する `Promise` を返します。

### 例外

`NotAllowedError` `DOMException`

`PermissionStatus` が `'granted'` でないとき投げられます。

`TypeMismatchError` `DOMException`

返されるエントリーがファイルで、ディレクトリーではないとき投げられます。

`NotFoundError` `DOMException`

ディレクトリーが存在せず、`create` オプションが `false` に設定されているとき投げられます。

例
-

以下の例では、指定した名前のディレクトリーハンドルを返します。ディレクトリーが存在しない場合、作成されます。


```js
const dirName = "directoryToGetName";

// ディレクトリーハンドル 'currentDirHandle' があると仮定
const subDir = currentDirHandle.getDirectoryHandle(dirName, { create: true });
```

仕様書
---

| Specification |
| --- |
| File System Standard # api-filesystemdirectoryhandle-getdirectoryhandle |

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

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

関連情報
----

* File System Access API
* The File System Access API: simplifying access to local files
FileSystemDirectoryHandle.removeEntry()
=======================================

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

`FileSystemDirectoryHandle` インターフェイスの **`removeEntry()`** メソッドは、指定の名前のファイルまたはディレクトリーがディレクトリーハンドル内に存在する場合、エントリーを削除しようとします。

構文
--


```js
removeEntry(name)
removeEntry(name, options)
```

### 引数

`name`

削除したいエントリーの `FileSystemHandle.name` を表す文字列です。

`options` 省略可

オプションを持つオブジェクトで、省略可能です。以下のオプションがあります。

`recursive`

`boolean` 値で、デフォルトは `false` です。`true` に設定すると、エントリーが再帰的に削除されます。


### 返値

`undefined` で解決する `Promise` を返します。

### 例外

`TypeError`

名前が有効な文字列ではないか、ファイルシステムで許可されていない文字を含むとき投げられます。

`NotAllowedError` `DOMException`

`PermissionStatus` が `'granted'` でないとき投げられます。

`InvalidModificationError` `DOMException`

`recursive` が `false` に設定されており、削除するエントリーが子を持つとき投げられます。

`NotFoundError` `DOMException`

エントリー名が見つからないか一致しないとき投げられます。

例
-

以下の例では、ディレクトリーハンドル内のエントリーを削除します。


```js
const entryName = "entryToRemove";

// ディレクトリーハンドル 'currentDirHandle' があると仮定
currentDirHandle.removeEntry(entryName).then(() => {
  // 削除に成功したとき実行するコード
});
```

仕様書
---

| Specification |
| --- |
| File System Standard # api-filesystemdirectoryhandle-removeentry |

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

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

関連情報
----

* File System Access API
* The File System Access API: simplifying access to local files
FileSystemDirectoryHandle.keys()
================================

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

`FileSystemDirectoryHandle` インターフェイスの **`keys()`** メソッドは、`FileSystemDirectoryHandle` 内の各アイテムのキーを含む新しい *配列イテレーター* を返します。

構文
--


```js
FileSystemDirectoryHandle.keys()
```

### 引数

なし

### 返値

新しい `Array` を返します。

例
-

未稿

仕様書
---

| Specification |
| --- |
| File System Standard # api-filesystemdirectoryhandle-asynciterable |

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

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

関連情報
----

* File System Access API
* The File System Access API: simplifying access to local files