recursal/MDN huggingface dataset:
FileSystemDirectoryHandle.resolve()
===================================

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

`FileSystemDirectoryHandle` インターフェイスの **`resolve()`** メソッドは、親ハンドルから指定の子エントリーへのディレクトリー名の `Array` を返します。指定された子エントリーが配列の最後の要素になります。

構文
--


```js
resolve(possibleDescendant)
```

### 引数

`possibleDescendant`

相対パスを返す `FileSystemHandle` です。

### 返値

文字列の `Array`、または `possibleDescendant` がこの `FileSystemDirectoryHandle` の子孫でないときは `null` で解決する `Promise` を返します。

### 例外

例外は投げられません。

例
-

以下の非同期関数は、`resolve()` を用いて、選択されたファイルの指定のディレクトリーハンドルを基準とする相対パスを取得します。


```js
async function returnPathDirectories(directoryHandle) {
  // ファイルピッカーを開き、ファイルハンドルを得る
  const [handle] = await self.showOpenFilePicker();
  if (!handle) {
    // ユーザーがキャンセルしたか、ファイルを開くのに失敗した
    return;
  }

  // ハンドルがディレクトリーハンドル内に存在するかを確認する
  const relativePaths = await directoryHandle.resolve(handle);

  if (relativePaths === null) {
    // ディレクトリーハンドル内に存在しない
  } else {
    // relativePath は相対パスを表す名前の配列
    for (const name of relativePaths) {
      // 各エントリーを記録する
      console.log(name);
    }
  }
}
```

仕様書
---

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

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

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.entries()
===================================

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

`FileSystemDirectoryHandle` インターフェイスの **`entries()`** メソッドは、`for...in` が提供するのと同じ順序でオブジェクト自身の列挙可能なプロパティの `[key, value]` ペアの配列を返します。(違いは、for-in ループはプロトタイプチェーン内のプロパティも列挙することです)

構文
--


```js
entries()
```

### 引数

なし

### 返値

`FileSystemDirectoryHandle` オブジェクト自身の列挙可能なプロパティの `[key, value]` ペアの配列を返します。

例
-


```js
const dirHandle = await window.showDirectoryPicker();

for await (const [key, value] of dirHandle.entries()) {
  console.log({ key, value });
}
```

仕様書
---

| 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
FileSystemDirectoryHandle.values()
==================================

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

`FileSystemDirectoryHandle` インターフェイスの **`values()`** メソッドは、`FileSystemDirectoryHandle` オブジェクト内の各インデックスに対応する値を含む新しい *配列イテレーター* を返します。

構文
--


```js
values()
```

### 引数

なし

### 返値

新しい `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
FileSystemDirectoryHandle.getFileHandle()
=========================================

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

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

構文
--


```js
getFileHandle(name)
getFileHandle(name, options)
```

### 引数

`name`

取得したいファイルの `FileSystemHandle.name` を表す文字列です。

`options` 省略可

以下のプロパティを持つオブジェクトです。

`create`

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



### 返値

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

### 例外

`NotAllowedError` `DOMException`

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

`TypeError`

指定された名前が有効な文字列でないか、ネイティブのファイルシステムで支障が出る文字を含むとき投げられます。

`TypeMismatchError` `DOMException`

指定されたエントリーがディレクトリーであってファイルではないとき投げられます。

`NotFoundError` `DOMException`

ファイルが存在せず、`create` オプションが `false` に設定されているとき投げられます。

例
-

以下の例では、指定の名前のファイルハンドルを返します。ファイルが存在しない場合、作成されます。


```js
const fileName = "fileToGetName";

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

仕様書
---

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

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

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
SpeechRecognitionResult.isFinal
===============================

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

`SpeechRecognitionResult` (en-US)インターフェイスの **`isFinal`** リードオンリーのプロパティは結果がファイナルかどうかの (`Boolean` 型) のことです。true の場合は、これは結果を返す最終の時間です。false の場合は、暫定の結果を返し、後々それは更新されます。

構文
--
```

var myIsFinal = speechRecognitionResultInstance.isFinal;
```

### 返り値

A `Boolean`.

例
-


```js
recognition.onresult = function (event) {
  // The SpeechRecognitionEvent results property returns a SpeechRecognitionResultList object
  // The SpeechRecognitionResultList object contains SpeechRecognitionResult objects.
  // It has a getter so it can be accessed like an array
  // The first [0] returns the SpeechRecognitionResult at position 0.
  // Each SpeechRecognitionResult object contains SpeechRecognitionAlternative objects that contain individual results.
  // These also have getters so they can be accessed like arrays.
  // The second [0] returns the SpeechRecognitionAlternative at position 0.
  // We then return the transcript property of the SpeechRecognitionAlternative object
  var color = event.results[0][0].transcript;
  diagnostic.textContent = "Result received: " + color + ".";
  bg.style.backgroundColor = color;

  console.log(event.results[0].isFinal);
};
```

仕様
--

| Specification |
| --- |
| Web Speech API # dom-speechrecognitionresult-isfinal |

ブラウザー実装状況
---------

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

### Firefox OS 権限

アプリで音声認識を利用する前に、下記の権限を manifest に追加する必要があります。


```json
"permissions": {
  "audio-capture" : {
    "description" : "Audio capture"
  },
  "speech-recognition" : {
    "description" : "Speech recognition"
  }
}
```


privileged アプリ権限も必要なので、下記も追加が必要です。


```json
  "type": "privileged"
```

関連情報
----

* Web Speech API
AnimationEvent: AnimationEvent() コンストラクター
=========================================

**`AnimationEvent()`** コンストラクターは、アニメーションに関するイベントを表す新しい `AnimationEvent` オブジェクトを返します。

構文
--


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

### 引数

`type`

`AnimationEvent` の型名を表す文字列です。
 大文字と小文字を区別し、ブラウザーでは `animationstart`, `animationend`, `animationiteration` のいずれかに設定されます。


`options` 省略可

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

`animationName` 省略可

トランジションに関連付けられた `animation-name` の値を含む文字列です。遷移に関連付けられた CSS プロパティの値です。既定値は `""` です。

`elapsedTime` 省略可

`float` で、このイベントが発行されたときにアニメーションが動作していた時間（アニメーションが一時停止していた時間を除く）を秒単位で与えます。
 `animationstart` イベントの場合、 `elapsedTime` は `0.0` です。ただし、 `animation-delay` に負の値を指定した場合は除きます。
 この場合、イベントは `elapsedTime` に `(-1 * delay)` が含まれた状態で発行されます。既定で `0.0` となります。


`pseudoElement` 省略可

文字列で、アニメーションを動作させる擬似要素の名前を含む、 `"::"` で始まる名前です。もしアニメーションが擬似要素上で動作せず、要素そのもの上で動作するる場合は、空文字列 `""` を指定します。 既定では `""` となります。


仕様書
---

| Specification |
| --- |
| CSS Animations Level 1 # dom-animationevent-animationevent |

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

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

関連情報
----

* CSS アニメーションの使用
* アニメーション関連の CSS プロパティとアットルール: `animation`,
 `animation-delay`, `animation-direction`,
 `animation-duration`, `animation-fill-mode`,
 `animation-iteration-count`, `animation-name`,
 `animation-play-state`, `animation-timing-function`,
 `@keyframes`
* 所属先の `AnimationEvent` インターフェイス
AnimationEvent: animationName プロパティ
===================================

**`AnimationEvent.animationName`** は読み取り専用プロパティで、トランジションに関連付けられた CSS の `animation-name` の値を含む文字列です。

値
-

CSS の `animation-name` プロパティの値が入った文字列です。

仕様書
---

| Specification |
| --- |
| CSS Animations Level 1 # dom-animationevent-animationname |

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

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

関連情報
----

* CSS アニメーションの使用
* アニメーション関連の CSS プロパティとアットルール: `animation`,
 `animation-delay`, `animation-direction`,
 `animation-duration`, `animation-fill-mode`,
 `animation-iteration-count`, `animation-name`,
 `animation-play-state`, `animation-timing-function`,
 `@keyframes`
* 所属先の `AnimationEvent` インターフェイス
AnimationEvent: pseudoElement プロパティ
===================================

**`AnimationEvent.pseudoElement`** は読み取り専用のプロパティです。`'::'` で始まる文字列で、このアニメーションが実行される擬似要素の名前を示します。
 このアニメーションが擬似要素ではなく、要素上で動作している場合は、空文字列 `''` になります。

値
-

`'::'` で始まる文字列で、このアニメーションが実行される擬似要素の名前を示します。

仕様書
---

| Specification |
| --- |
| CSS Animations Level 1 # dom-animationevent-pseudoelement |

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

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

関連情報
----

* CSS アニメーションの使用
* アニメーション関連の CSS プロパティとアットルール: `animation`,
 `animation-delay`, `animation-direction`,
 `animation-duration`, `animation-fill-mode`,
 `animation-iteration-count`, `animation-name`,
 `animation-play-state`, `animation-timing-function`,
 `@keyframes`
* 所属先の `AnimationEvent` インターフェイス
AnimationEvent: elapsedTime プロパティ
=================================

**`AnimationEvent.elapsedTime`** は読み取り専用のプロパティで、アニメーションが開始されてからの秒数を `float` 型で表します。このイベントが発生したとき、アニメーションが停止した場合を除いて常に設定されます。 `animationstart` イベントにおいては `elapsedTime` は `0.0` になりますが、 `animation-delay` が負の値の場合は、このイベントは `elapsedTime` が `(-1 * 待ち時間 )` であるときに発生します。

値
-

`float` 型で、時間の量を秒単位で指定します。

仕様書
---

| Specification |
| --- |
| CSS Animations Level 1 # dom-animationevent-elapsedtime |

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

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

関連情報
----

* CSS アニメーションの使用
* アニメーションに関する CSS プロパティとアットルール: `animation`, `animation-delay`, `animation-direction`, `animation-duration`, `animation-fill-mode`, `animation-iteration-count`, `animation-name`, `animation-play-state`, `animation-timing-function`, `@keyframes`.
* 所属先の `AnimationEvent` インターフェイス
VRDisplayCapabilities.canPresent
================================

**非推奨:** この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

**非標準:** この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。

**`canPresent`** は `VRDisplayCapabilities` インターフェイスの読み取り専用プロパティで、VR ディスプレイが（HMD を通じて）コンテンツを表示可能かどうかの状態を論理値で返します。

**メモ:** このプロパティは古い WebVR API の一部でした。これは WebXR 機器 API に置き換えられました。

これは、 6 自由度追跡が可能であるものの、 `VRDisplay.requestPresent()` が意味を持たない「マジックウィンドウ」機器を識別するのに有益な機能です。`canPresent` が `false` の場合、 `VRDisplay.requestPresent()` の呼び出しは失敗し、 `VRDisplay.getEyeParameters()` は `null` を返します。

値
-

論理値です。

例
-

コード例については `VRDisplayCapabilities` を参照してください。

仕様書
---

このプロパティは古い WebVR API の一部であり、これは WebXR 機器 API で置き枯れられました。標準規格になる見込みはありません。

すべてのブラウザーが新しい WebXR API を実装するまで、 A-Frame、Babylon.js、Three.js などのフレームワークを使用するか、ポリフィルを使用することが、すべてのブラウザーで動作する WebXR アプリを開発する上で推奨されます。[1]

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

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

関連情報
----

* WebVR API
VRDisplayCapabilities.hasPosition
=================================

**非推奨:** この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

**非標準:** この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。

**`hasPosition`** は `VRDisplayCapabilities` インターフェイスの読み取り専用プロパティで、その VR ディスプレイがトラッキング機能を備えていて位置情報を返すことができるれば `true` を返します。

**メモ:** このプロパティは古い WebVR API の一部でした。これは WebXR 機器 API に置き換えられました。

値
-

論理値です。

例
-

コード例については `VRDisplayCapabilities` を参照してください。

仕様書
---

このプロパティは古い WebVR API の一部であり、これは WebXR 機器 API で置き枯れられました。標準規格になる見込みはありません。

すべてのブラウザーが新しい WebXR API を実装するまで、 A-Frame、Babylon.js、Three.js などのフレームワークを使用するか、ポリフィルを使用することが、すべてのブラウザーで動作する WebXR アプリを開発する上で推奨されます。[1]

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

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

関連情報
----

* WebVR API
VRDisplayCapabilities.maxLayers
===============================

**非推奨:** この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

**非標準:** この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。

**`maxLayers`** は `VRDisplayCapabilities` インターフェイスの読み取り専用プロパティで、その VR ディスプレイが同時に表示できる `VRLayerInit` の最大値を示す数値を返します（例えば `Display.requestPresent()` が受け取ることのできる配列の最大長です）。

**メモ:** このプロパティは古い WebVR API の一部でした。これは WebXR 機器 API に置き換えられました。

### 値

数値であり、`VRDisplayCapabilities.canPresent` が `true` の場合は 1、それ以外の場合は 0 です。

例
-

コード例については `VRDisplayCapabilities` を参照してください。

仕様書
---

このプロパティは古い WebVR API の一部であり、これは WebXR 機器 API で置き枯れられました。標準規格になる見込みはありません。

すべてのブラウザーが新しい WebXR API を実装するまで、 A-Frame、Babylon.js、Three.js などのフレームワークを使用するか、ポリフィルを使用することが、すべてのブラウザーで動作する WebXR アプリを開発する上で推奨されます。[1]

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

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

関連情報
----

* WebVR API
VRDisplayCapabilities.hasExternalDisplay
========================================

**非推奨:** この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

**非標準:** この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。

**メモ:** このプロパティは古い WebVR API の一部でした。これは WebXR 機器 API に置き換えられました。

**`hasExternalDisplay`** は `VRDisplayCapabilities` インターフェイスの読み取り専用プロパティで、VR ディスプレイがこの端末の主ディスプレイから分離しているどうかを示す論理値を返します。

**メモ:** 表示中の VR コンテンツがその端末の他のコンテンツを隠してしまう場合 `false` を返します。この場合、アプリは VR コンテンツのミラーリングしようとしたり、 VR ではない UI を更新しようとすべきではありません。こうしたコンテンツは表示されないからです。

値
-

論理値です。

例
-

コード例については `VRDisplayCapabilities` を参照してください。

仕様書
---

このプロパティは古い WebVR API の一部であり、これは WebXR 機器 API で置き枯れられました。標準規格になる見込みはありません。

すべてのブラウザーが新しい WebXR API を実装するまで、 A-Frame、Babylon.js、Three.js などのフレームワークを使用するか、ポリフィルを使用することが、すべてのブラウザーで動作する WebXR アプリを開発する上で推奨されます。[1]

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

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

関連情報
----

* WebVR API
VRDisplayCapabilities.hasOrientation
====================================

**非推奨:** この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

**非標準:** この機能は標準ではなく、標準化の予定もありません。公開されているウェブサイトには使用しないでください。ユーザーによっては使用できないことがあります。実装ごとに大きな差があることもあり、将来は振る舞いが変わるかもしれません。

**`hasOrientation`** は `VRDisplayCapabilities` インターフェイスの読み取り専用プロパティで、その VR ディスプレイがトラッキング機能を持っていて向き情報を取得できれば `true` を返します。

**メモ:** このプロパティは古い WebVR API の一部でした。これは WebXR 機器 API に置き換えられました。

値
-

論理値です。

例
-

コード例については `VRDisplayCapabilities` を参照してください。

仕様書
---

このプロパティは古い WebVR API の一部であり、これは WebXR 機器 API で置き枯れられました。標準規格になる見込みはありません。

すべてのブラウザーが新しい WebXR API を実装するまで、 A-Frame、Babylon.js、Three.js などのフレームワークを使用するか、ポリフィルを使用することが、すべてのブラウザーで動作する WebXR アプリを開発する上で推奨されます。[1]

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

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

関連情報
----

* WebVR API
CSSStyleRule.styleMap
=====================

**`styleMap`** は `CSSStyleRule` インターフェイスの読み取り専用プロパティで、このルールのプロパティ／値の組にアクセスするための `StylePropertyMap` オブジェクトを返します。

値
-

`StylePropertyMap` オブジェクトです。

例
-

以下の例では、　`styleMap` を使用して `StylePropertyMap.set()` メソッドを使用し、スタイルを変更する方法を示しています。


```js
const stylesheet = document.styleSheets[0];

Object.values(stylesheet.cssRules).forEach((block) => {
  if (block.selectorText === "button") {
    block.styleMap.set("--mainColor", "black");
  }
});
```

仕様書
---

| Specification |
| --- |
| CSS Typed OM Level 1 # dom-cssstylerule-stylemap |

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

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

**`style`** は読み取り専用プロパティで、この `CSSStyleRule` の宣言ブロックのための `CSSStyleDeclaration` インターフェイスです。

値
-

`CSSStyleDeclaration` オブジェクトで、次のプロパティがあります。

computed flag

未設定。

declarations

このルール内で宣言された宣言で、指定された順番であり、個別指定プロパティに展開された一括指定プロパティです。

parent CSS rule

コンテキストオブジェクトで、 this の別名です。

owner node

null です。

例
-

 この CSS は 1 つのスタイルルールを含んでいます。これは最初の `CSSRule` となり、 `document.styleSheets[0].cssRules` で返されます。
 従って、 `myRules[0].style` は `h1` に定義された宣言を表す `CSSStyleDeclaration` をを返します。


```css
h1 {
  color: pink;
}
```



```js
let myRules = document.styleSheets[0].cssRules;
console.log(myRules[0].style); // a CSSStyleDeclaration representing the declarations on the h1.
```


**メモ:** 宣言ブロックは、中括弧内に現れるスタイルルールの一部で、実際にスタイル定義を提供する部分です（セレクターについては、中括弧の前に来る部分）。

仕様書
---

| Specification |
| --- |
| CSS Object Model (CSSOM) # dom-cssstylerule-style |

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

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

**`selectorText`** は `CSSStyleRule` インターフェイスのプロパティで、この `CSSStyleRule` に関連付けられたセレクターを取得および設定します。

値
-

文字列です。

例
-

この CSS は 1 つのスタイルルールを含んでいます。これは最初の `CSSRule` となり、 `document.styleSheets[0].cssRules` で返されます。従って、 `myRules[0].selectorText` はセレクターの文字列を返します。この場合は `"h1"` となります。


```css
h1 {
  color: pink;
}
```



```js
let myRules = document.styleSheets[0].cssRules;
console.log(myRules[0].selectorText); // a string containing "h1".
```

仕様書
---

| Specification |
| --- |
| CSS Object Model (CSSOM) # dom-cssstylerule-selectortext |

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

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

**非推奨:** この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

**`AudioProcessingEvent()`** コンストラクターは、constructor creates a new `AudioProcessingEvent` object.

**メモ:** 通常、このコンストラクターはコードから直接呼び出されることはありません。ブラウザー自身がオブジェクトを作成し、イベントハンドラーに提供するからです。

構文
--


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

### 引数

`type`

 文字列で、このイベントの名前です。
 大文字小文字の区別があり、ブラウザーは常に `audioprocess` と設定します。


`options`

以下のプロパティを持つオブジェクトです。

`playbackTime`

数値で、音声が再生される時を表します。

`inputBuffer`

`AudioBuffer` で、入力する音声データが入ります。

`outputBuffer`

`AudioBuffer` で、出力する音声データが書き込まれるところです。


### 返値

新しい `AudioProcessingEvent` です。

仕様書
---

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

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

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

関連情報
----

* `AudioProcessingEvent`
* `ScriptProcessorNode`
AudioProcessingEvent: outputBuffer プロパティ
========================================

**非推奨:** この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

**`outputBuffer`** は `AudioProcessingEvent` インターフェイスの読み取り専用プロパティで、音声処理イベントの出力バッファーを表します。

出力バッファーは `AudioBuffer` オブジェクトで表されます。このオブジェクトは音声チャンネルの集合を格納し、各チャンネルは一連の振幅としてエンコードされた音声信号波形を表す浮動小数点数の値の配列です。チャンネルの数と各チャンネルの長さは `AudioBuffer` のチャンネル数とバッファーサイズのプロパティによって決まります。

値
-

`AudioBuffer` オブジェクトです。

例
-

この例では、`ScriptProcessorNode` が 256 サンプルのバッファーサイズ、2 つの入力チャンネル、2 つの出力チャンネルで作成されています。`audioprocess` イベントが発行されると、入力バッファーと出力バッファーがイベントオブジェクトから取得されます。入力バッファー内の音声データが処理され、結果が出力バッファーに書き込まれます。この場合、音声データは 0.5 倍に縮小されます。


```js
const audioContext = new AudioContext();
const processor = audioContext.createScriptProcessor(256, 2, 2);

processor.addEventListener("audioprocess", (event) => {
  const inputBuffer = event.inputBuffer;
  const outputBuffer = event.outputBuffer;

  for (let channel = 0; channel < outputBuffer.numberOfChannels; channel++) {
    const inputData = inputBuffer.getChannelData(channel);
    const outputData = outputBuffer.getChannelData(channel);

    // Process the audio data here
    for (let i = 0; i < outputBuffer.length; i++) {
      outputData[i] = inputData[i] \* 0.5;
    }
  }
});

processor.connect(audioContext.destination);
```

仕様書
---

| Specification |
| --- |
| Web Audio API # dom-audioprocessingevent-outputbuffer |

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

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

関連情報
----

* `AudioProcessingEvent.inputBuffer`
* `ScriptProcessorNode`
AudioProcessingEvent: playbackTime プロパティ
========================================

**非推奨:** この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

**`playbackTime`** は `AudioProcessingEvent` インターフェイスのプロパティで、音声が再生される時間を表します。 これは `AudioContext` が使用している時間と同じ座標系です。

値
-

数値で、整数とは限りません。

例
-


```js
const audioContext = new AudioContext();
const processor = audioContext.createScriptProcessor(256, 2, 2);

processor.addEventListener("audioprocess", (event) => {
  const inputBuffer = event.inputBuffer;
  const outputBuffer = event.outputBuffer;

  for (let channel = 0; channel < outputBuffer.numberOfChannels; channel++) {
    const inputData = inputBuffer.getChannelData(channel);
    const outputData = outputBuffer.getChannelData(channel);

    // Log the corresponding time for this audio buffer
    console.log(`Received audio data to be played at ${event.playbackTime}`);

    // Process the audio data here
    for (let i = 0; i < outputBuffer.length; i++) {
      outputData[i] = inputData[i] \* 0.5;
    }
  }
});

processor.connect(audioContext.destination);
```

仕様書
---

| Specification |
| --- |
| Web Audio API # dom-audioprocessingevent-playbacktime |

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

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

関連情報
----

* `AudioProcessingEvent`
* `ScriptProcessorNode`
AudioProcessingEvent: inputBuffer プロパティ
=======================================

**非推奨:** この機能は非推奨になりました。まだ対応しているブラウザーがあるかもしれませんが、すでに関連するウェブ標準から削除されているか、削除の手続き中であるか、互換性のためだけに残されている可能性があります。使用を避け、できれば既存のコードは更新してください。このページの下部にある互換性一覧表を見て判断してください。この機能は突然動作しなくなる可能性があることに注意してください。

**`inputBuffer`** は `AudioProcessingEvent` インターフェイスの読み取り専用プロパティで、音声処理イベントの入力バッファーを表します。

入力バッファーは `AudioBuffer` オブジェクトで表されます。このオブジェクトは音声チャンネルの集合を格納し、各チャンネルは一連の振幅としてエンコードされた音声信号波形を表す浮動小数点数の値の配列です。チャンネルの数と各チャンネルの長さは `AudioBuffer` のチャンネル数とバッファーサイズのプロパティによって決まります。

値
-

`AudioBuffer` オブジェクトです。

例
-

この例では、`ScriptProcessorNode` が 256 サンプルのバッファーサイズ、2 つの入力チャンネル、2 つの出力チャンネルで作成されています。`audioprocess` イベントが発行されると、入力バッファーと出力バッファーがイベントオブジェクトから取得されます。入力バッファー内の音声データが処理され、結果が出力バッファーに書き込まれます。この場合、音声データは 0.5 倍に縮小されます。


```js
const audioContext = new AudioContext();
const processor = audioContext.createScriptProcessor(256, 2, 2);

processor.addEventListener("audioprocess", (event) => {
  const inputBuffer = event.inputBuffer;
  const outputBuffer = event.outputBuffer;

  for (let channel = 0; channel < outputBuffer.numberOfChannels; channel++) {
    const inputData = inputBuffer.getChannelData(channel);
    const outputData = outputBuffer.getChannelData(channel);

    // Process the audio data here
    for (let i = 0; i < outputBuffer.length; i++) {
      outputData[i] = inputData[i] \* 0.5;
    }
  }
});

processor.connect(audioContext.destination);
```

仕様書
---

| Specification |
| --- |
| Web Audio API # dom-audioprocessingevent-inputbuffer |

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

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

関連情報
----

* `AudioProcessingEvent.outputBuffer`
* `ScriptProcessorNode`