recursal/MDN huggingface dataset:
MouseEvent: button プロパティ
========================

**`MouseEvent.button`** は読み取り専用のプロパティで、イベントを引き起こすのにどのボタンが押されたのかを表します。

 このプロパティは、 1 つまたは複数のボタンを押したり離したりすることによって発生したイベント中に、どのボタンが押されたかを示すことのみを保証します。
 したがって、 `mouseenter`, `mouseleave`, `mouseover`, `mouseout`, `mousemove` のようなイベントに対しては確かではありません。

ユーザーはポインティングデバイスの設定を変更できるため、例えばイベントのボタンプロパティがゼロだった場合、必ずしも物理的な左ボタンによるものとは限りません。ただし、そのような場合でも標準設定における左ボタンと同じ動作をするべきです。

**メモ:** `MouseEvent.buttons` プロパティと混同しないように注意してください。こちらはすべての種類のマウスイベントで、ボタンの押下状態を示します。

値
-

該当するボタンに対応する番号です。

* `0`: 主ボタンが押された。通常は左ボタンか初期化されていない状態。
* `1`: 補助ボタンが押された。通常はホイールボタンまたは中央のボタンが押された場合。
* `2`: 副ボタンが押された。通常は右ボタン。
* `3`: 第四ボタン。一般的にブラウザーの戻るボタン。
* `4`: 第五ボタン。一般的にブラウザーの進むボタン。

 上記のように、ボタンは標準の「左から右へ」のレイアウトとは異なる構成でも構いません。
 左利き用に設定されたマウスでは、ボタンの動作が逆になることがあります。
 ポインティングデバイスによっては 1 つのボタンしか持たず、キーボードまたは他の入力機構を使用して主、副、補助などを示します。
 他のポインティングデバイスは多くのボタンを異なる機能およびボタン値にマッピングすることができます。

例
-

### HTML


```html
<button id="button" oncontextmenu="event.preventDefault();">
  マウスでここをクリックしてください…
</button>
<p id="log"></p>
```

### JavaScript


```js
let button = document.querySelector("#button");
button.addEventListener("mouseup", (e) => {
  let log = document.querySelector("#log");
  switch (e.button) {
    case 0:
      log.textContent = "左ボタンがクリックされました。";
      break;
    case 1:
      log.textContent = "中央ボタンがクリックされました。";
      break;
    case 2:
      log.textContent = "右ボタンがクリックされました。";
      break;
    default:
      log.textContent = `不明なボタンコード: ${e.button}`;
  }
});
```

### 結果

仕様書
---

| Specification |
| --- |
| UI Events # dom-mouseevent-button |

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

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

関連情報
----

* `MouseEvent`
MouseEvent: metaKey プロパティ
=========================

**`MouseEvent.metaKey`** は読み取り専用のプロパティでありマウスイベントが発行されたときに `meta` キーが押されていたかどうかを論理値で示します。

 多くのオペレーティングシステムでは、 `meta` キーに特殊な機能を割り当てているため、このプロパティは実際にはキーが押されていても `false` を返す可能性があることに注意してください。
 例えば、 Windows では、このキーはスタートメニューを開きます。


**メモ:** Macintosh のキーボードでは、このキーは `command` キー (`⌘`) です。
 Windows のキーボードでは、このキーは Windows キー (`⊞`) です。


値
-

論理値であり、 `true` はキーが押されていたことを、 `false` はキーが押されてい*なかった*ことを示します。

例
-

この例は、 `click` イベントが発行されたときに `metaKey` プロパティを記録します。

### HTML


```html
<p>
  <code>metaKey</code> プロパティを試験するためにどこかをクリックしてください。
</p>
<p id="log"></p>
```

### JavaScript


```js
let log = document.querySelector("#log");
document.addEventListener("click", logKey);

function logKey(e) {
  log.textContent = `Meta キーの押下状態: ${e.metaKey}`;
}
```

### 結果

仕様書
---

| Specification |
| --- |
| UI Events # dom-mouseevent-metakey |

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

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

関連情報
----

* `MouseEvent`
MouseEvent: layerX プロパティ
========================

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

**`MouseEvent.layerX`** は読み取り専用のプロパティで、現在のレイヤーに関連するイベントの水平座標を返します。

このプロパティは、ページのスクロールを考慮し、文書全体からの相対値を返します。ただし、位置指定された要素内でイベントが発生した場合は、位置指定された要素の左上からの相対値が返されます。

値
-

整数値で、マウスイベントが発生したときのマウスポインターのピクセル単位の X 座標です。

例
-


```html
<html lang="en">
  <head>
    <title>pageX\pageY & layerX\layerY example</title>

    <script>
 function showCoords(evt) {
 const form = document.forms.form\_coords;
 const parent\_id = evt.target.parentNode.id;
 form.parentId.value = parent\_id;
 form.pageXCoords.value = evt.pageX;
 form.pageYCoords.value = evt.pageY;
 form.layerXCoords.value = evt.layerX;
 form.layerYCoords.value = evt.layerY;
 }
 </script>

    <style>
 #d1 {
 border: solid blue 1px;
 padding: 20px;
 }

 #d2 {
 position: absolute;
 top: 180px;
 left: 80%;
 right: auto;
 width: 40%;
 border: solid blue 1px;
 padding: 20px;
 }

 #d3 {
 position: absolute;
 top: 240px;
 left: 20%;
 width: 50%;
 border: solid blue 1px;
 padding: 10px;
 }
 </style>
  </head>

  <body onmousedown="showCoords(event)">
    <p>To display the mouse coordinates please click anywhere on the page.</p>

    <div id="d1">
      <span>
        This is an un-positioned div so clicking it will return layerX/layerY
        values almost the same as pageX/PageY values.
      </span>
    </div>

    <div id="d2">
      <span>
        This is a positioned div so clicking it will return layerX/layerY values
        that are relative to the top-left corner of this positioned element.
        Note the pageX\pageY properties still return the absolute position in
        the document, including page scrolling.
      </span>

      <span>
        Make the page scroll more! This is a positioned div so clicking it will
        return layerX/layerY values that are relative to the top-left corner of
        this positioned element. Note the pageX\pageY properties still return
        the absolute position in the document, including page scrolling.
      </span>
    </div>

    <div id="d3">
      <form name="form\_coords" id="form1">
        Parent Element id: <input type="text" name="parentId" size="7" /><br />
        pageX: <input type="text" name="pageXCoords" size="7" /> pageY:
        <input type="text" name="pageYCoords" size="7" /><br />
        layerX: <input type="text" name="layerXCoords" size="7" /> layerY:
        <input type="text" name="layerYCoords" size="7" />
      </form>
    </div>
  </body>
</html>
```

仕様書
---

*このプロパティはどの仕様書にも含まれていません。*

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

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

**`MouseEvent.y`** プロパティは、 `MouseEvent.clientY` プロパティの別名です。

仕様書
---

| Specification |
| --- |
| CSSOM View Module # dom-mouseevent-y |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
MouseEvent: WEBKIT\_FORCE\_AT\_FORCE\_MOUSE\_DOWN 静的プロパティ
=========================================================

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

**`MouseEvent.WEBKIT_FORCE_AT_FORCE_MOUSE_DOWN`** は WebKit 固有の静的な数値プロパティで、強いクリックの最小圧力の値です。

`WEBKIT_FORCE_AT_FORCE_MOUSE_DOWN` は `MouseEvent` の静的プロパティなので、常に `MouseEvent.WEBKIT_FORCE_AT_FORCE_MOUSE_DOWN` として使用してください。 `MouseEvent` インターフェイスのプロパティとしては使用できません。

仕様書
---

*どの仕様書にもありません。* Apple は Mac Developer Library で説明しています。

関連情報
----

* `MouseEvent.WEBKIT_FORCE_AT_MOUSE_DOWN`
* `MouseEvent.webkitForce`
* Force Touch events (en-US)
MouseEvent: altKey プロパティ
========================

**`MouseEvent.altKey`** は読み取り専用のプロパティでありマウスイベントが発行されたときに `alt` キーが押されていたかどうかを論理値で示します。

 オペレーティングシステムによっては、ブラウザーがいつでも `alt` キーを検出できるとは限りらないことに注意してください。
 例えば、一部の Linux では、 `alt` キーを押しながらマウスの左クリックが、ウィンドウの移動またはリサイズに使われています。

**メモ:** Macintosh のキーボードでは、このキーは `option` キーとも呼ばれています。

値
-

論理値であり、 `true` はキーが押されていたことを、 `false` はキーが押されてい*なかった*ことを示します。

例
-

この例は、 `click` イベントが発行されたときに `altKey` プロパティを記録します。

### HTML


```html
<p>
  <code>altKey</code> プロパティを試験するためにどこかをクリックしてください。
</p>
<p id="log"></p>
```

### JavaScript


```js
let log = document.querySelector("#log");
document.addEventListener("click", logKey);

function logKey(e) {
  log.textContent = `Alt キーの押下状態: ${e.altKey}`;
}
```

### 結果

仕様書
---

| Specification |
| --- |
| UI Events # dom-mouseevent-altkey |

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

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

関連情報
----

* `MouseEvent`
MouseEvent: webkitForce プロパティ
=============================

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

**`MouseEvent.webkitForce`** は WebKit 独自の数値プロパティで、タッチパッドまたはタッチ画面で適用される圧力の大きさを表す値です。

仕様書
---

*どの仕様書にもありません。* Apple は Mac Developer Library で説明しています。

関連情報
----

* `MouseEvent.WEBKIT_FORCE_AT_MOUSE_DOWN`
* `MouseEvent.WEBKIT_FORCE_AT_FORCE_MOUSE_DOWN`
* Force Touch events (en-US)
MouseEvent: offsetY プロパティ
=========================

**`offsetY`** は `MouseEvent` インターフェイスの読み取り専用プロパティで、マウスポインターの Y 座標におけるこのイベントと対象ノードのパディング辺との間のオフセットを提供します。

値
-

`double` 型の浮動小数点値です。

仕様書の早期の版では、整数として定義されていました。

仕様書
---

| Specification |
| --- |
| CSSOM View Module # dom-mouseevent-offsety |

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

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

関連情報
----

* `MouseEvent`
File: lastModified プロパティ
========================

**`File.lastModified`** は読み取り専用プロパティで、ファイルの最終更新日時を UNIX 元期（1970 年 1 月 1 日の深夜 0 時）からのミリ秒数で返します。最終更新日時が分からないファイルは、現在の日時を返します。

値
-

UNIX 元期からのミリ秒数を表す数値です。

例
-

下記の例では、選んだファイルをループして、それぞれのファイルが過去 1 年以内に変更されたかどうかを出力します。

### HTML


```html
<input type="file" id="filepicker" name="fileList" multiple />
<output id="output"></output>
```


```
output {
  display: block;
  white-space: pre-wrap;
}
```

### JavaScript


```js
const output = document.getElementById("output");
const filepicker = document.getElementById("filepicker");

filepicker.addEventListener("change", (event) => {
  const files = event.target.files;
  const now = new Date();
  output.textContent = "";

  for (const file of files) {
    const date = new Date(file.lastModified);
    // ファイルが 1 年以上変更されていなければtrue
    const stale = now.getTime() - file.lastModified > 31\_536\_000\_000;
    output.textContent += `${file.name} is ${
 stale ? "stale" : "fresh"
 } (${date}).\n`;
  }
});
```

### 結果

### 動的に生成されるファイル

ファイルが動的に生成された場合、最終更新日時は `new File()` コンストラクター関数で指定することができます。ファイルが見つからない場合、 `lastModified` は `File` オブジェクトの作成時に `Date.now()` から現在の時刻を継承します。


```js
const fileWithDate = new File([], "file.bin", {
  lastModified: new Date(2017, 1, 1),
});
console.log(fileWithDate.lastModified); // returns 1485903600000

const fileWithoutDate = new File([], "file.bin");
console.log(fileWithoutDate.lastModified); // returns current time
```

時間の精度の低下
--------

 タイミング攻撃やフィンガープリンティングに対する保護機能を提供するために、 `someFile.lastModified` の精度がブラウザーの設定に応じて丸められることがあります。
 Firefox では、`privacy.reduceTimerPrecision` 設定は既定で有効になっており、 Firefox 59 では既定で 20 us に設定されています。60 で 2 ms になります。


```js
// Firefox 60 での時間の制度の低下 (2ms)
someFile.lastModified;
// 1519211809934
// 1519211810362
// 1519211811670
// …

// `privacy.resistFingerprinting` が有効な場合の時間の制度の低下
someFile.lastModified;
// 1519129853500
// 1519129858900
// 1519129864400
// …
```


Firefox では、`privacy.resistFingerprinting` を有効にすることもできます。精度は 100ms か `privacy.resistFingerprinting.reduceTimerPrecision.microseconds` のいずれか大きい方の値になります。

仕様書
---

| Specification |
| --- |
| File API # dfn-lastModified |

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

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

関連情報
----

* `File`
File: File() コンストラクター
=====================

**`File()`** コンストラクターは、新しい `File` オブジェクトのインスタンスを生成します。

構文
--


```js
new File(bits, name)
new File(bits, name, options)
```

### 引数

`bits`

反復可能オブジェクト、例えば `Array`、`ArrayBuffer`、`TypedArray`、`DataView`、`Blob`、文字列、またはそのような要素を混合させたものを `File` 内に格納します。なお、文字列は JavaScript の UTF-16 文字列ではなく、UTF-8 でエンコードされます。

`name`

文字列で、ファイル名またはファイルへのパスを表します。

`options` 省略可

ファイルのオプション属性を含むオプションオブジェクト。利用可能なオプションは以下の通りです。

`type`

ファイルの中に入るコンテンツの MIME タイプを表す文字列です。既定値は `""` です。

`lastModified`

UNIX 元期からのミリ秒単位で、ファイルが最後に更新された時刻を表す数値です。既定値は `Date.now()` です。


例
-


```js
const file = new File(["foo"], "foo.txt", {
  type: "text/plain",
});
```

仕様書
---

| Specification |
| --- |
| File API # file-constructor |

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

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

関連情報
----

* `FileReader`
* `Blob`
File: lastModifiedDate プロパティ
============================

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

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

**`File.lastModifiedDate`** 読み取り専用プロパティは、ファイルの最終更新日を返します。最終更新日がわからないファイルは、現在の日付を返します。

値
-

`Date` オブジェクトで、ファイルが最後に変更された日時を表します。

例
-


```js
// fileInput は HTMLInputElement である <input type="file" multiple id="myfileinput">
const fileInput = document.getElementById("myfileinput");

for (const file of fileInput.files) {
  console.log(`${file.name} の最終更新日は ${file.lastModifiedDate}`);
}
```

時間の精度の低下
--------

タイミング攻撃やフィンガープリンティングに対する保護機能を提供するために、 `someFile.lastModifiedDate.getTime()` の精度がブラウザーの設定に応じて丸められることがあります。

Firefox では、`privacy.reduceTimerPrecision` 設定は既定で有効になっており、 Firefox 59 では既定で 20 us に設定されています。60 で 2 ms になります。


```js
// Firefox 60 での時間の制度の低下 (2ms)
someFile.lastModifiedDate.getTime();
// 1519211809934
// 1519211810362
// 1519211811670
// …

// `privacy.resistFingerprinting` が有効な場合の時間の制度の低下
someFile.lastModifiedDate.getTime();
// 1519129853500
// 1519129858900
// 1519129864400
// …
```


Firefox では、`privacy.resistFingerprinting` を有効にすることもできます。精度は 100ms か `privacy.resistFingerprinting.reduceTimerPrecision.microseconds` のいずれか大きい方の値になります。

仕様書
---

*ファイル API 仕様の初期のドラフトにありますが、このプロパティは削除されており、現在は非標準です。代わりに`File.lastModified` を使用してください。*

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

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

関連情報
----

* `File`
File: webkitRelativePath プロパティ
==============================

**`File.webkitRelativePath`** は、`webkitdirectory` 属性が設定された `<input>` 要素で、ユーザーが選択したディレクトリーに対するファイルのパスを指定する文字列を持つ読み取り専用のプロパティです。

値
-

ユーザーが選択した祖先ディレクトリーを基準にしたファイルのパスを含む文字列。

例
-

この例では、ユーザーが 1 つまたは複数のディレクトリーを選択することができるディレクトリーピッカーが表示されます。 `change` イベントが発生すると、選択されたディレクトリ階層に含まれるすべてのファイルのリストが生成され、表示されます。

### HTML


```html
<input type="file" id="filepicker" name="fileList" webkitdirectory multiple />
<output id="output"></output>
```


```
output {
  display: block;
  white-space: pre-wrap;
}
```

### JavaScript


```js
const output = document.getElementById("output");
const filepicker = document.getElementById("filepicker");

filepicker.addEventListener("change", (event) => {
  const files = event.target.files;

  for (const file of files) {
    output.textContent += `${file.webkitRelativePath}\n`;
  }
});
```

### 結果

仕様書
---

| Specification |
| --- |
| File and Directory Entries API # dom-file-webkitrelativepath |

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

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

関連情報
----

* ファイルとディレクトリー項目 API
* `HTMLInputElement.webkitEntries`
* `HTMLInputElement.webkitdirectory`
File: name プロパティ
================

`File` オブジェクトによって表されるファイルの名前を返します。セキュリティ上の理由から、パスはこのプロパティから除外されます。

値
-

パスを除いたファイル名の入った文字列。 "My Resume.rtf" など。

例
-

### HTML


```html
<input type="file" id="filepicker" multiple />
<div>
  <p>選択されたファイルのリスト:</p>
  <ul id="output"></ul>
</div>
```

### JavaScript


```js
const output = document.getElementById("output");
const filepicker = document.getElementById("filepicker");

filepicker.addEventListener("change", (event) => {
  const files = event.target.files;
  output.textContent = "";

  for (const file of files) {
    const li = document.createElement("li");
    li.textContent = file.name;
    output.appendChild(li);
  }
});
```

### 結果

仕様書
---

| Specification |
| --- |
| File API # dfn-name |

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

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

関連情報
----

* ウェブアプリケーションからのファイルの使用
BluetoothCharacteristicProperties: writableAuxiliaries プロパティ
============================================================

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

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

`BluetoothCharacteristicProperties` インターフェイスの読み取り専用プロパティ **`writableAuxiliaries`** は、キャラクタリスティックディスクリプターへの信頼性のある書き込みが許可されているならば `true` となる `boolean` 値を返します。

値
-

論理値です。

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothcharacteristicproperties-writableauxiliaries |

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

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

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

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

`BluetoothCharacteristicProperties` インターフェイスの読み取り専用プロパティ **`authenticatedSignedWrites`** は、キャラクタリスティックの値への署名付き書き込みが許可されているならば `true` となる `boolean` 値を返します。

値
-

論理値です。

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothcharacteristicproperties-authenticatedsignedwrites |

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

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

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

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

`BluetoothCharacteristicProperties` インターフェイスの読み取り専用プロパティ **`reliableWrite`** は、キャラクタリスティックへの信頼性のある書き込みが許可されているならば `true` となる `boolean` 値を返します。

値
-

論理値です。

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothcharacteristicproperties-reliablewrite |

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

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

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

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

`BluetoothCharacteristicProperties` インターフェイスの読み取り専用プロパティ **`writeWithoutResponse`** は、キャラクタリスティックへのレスポンスなしの書き込みが許可されているならば `true` となる `boolean` 値を返します。

値
-

論理値です。

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothcharacteristicproperties-writewithoutresponse |

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

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

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

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

`BluetoothCharacteristicProperties` インターフェイスの読み取り専用プロパティ **`indicate`** は、キャラクタリスティックの値のアクノリッジメントありのインジケーションが許可されているならば `true` となる `boolean` 値を返します。

値
-

論理値です。

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothcharacteristicproperties-indicate |

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

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

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

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

`BluetoothCharacteristicProperties` インターフェイスの読み取り専用プロパティ **`write`** は、キャラクタリスティックへのレスポンスありの書き込みが許可されているならば `true` となる `boolean` 値を返します。

値
-

論理値です。

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothcharacteristicproperties-write |

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

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

null
BluetoothCharacteristicProperties: notify プロパティ
===============================================

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

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

`BluetoothCharacteristicProperties` インターフェイスの読み取り専用プロパティ **`notify`** は、キャラクタリスティックの値のアクノリッジメントなしのノーティフィケーションが許可されているならば `true` となる `boolean` 値を返します。

値
-

論理値です。

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothcharacteristicproperties-notify |

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

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

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

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

`BluetoothCharacteristicProperties` インターフェイスの読み取り専用プロパティ **`read`** は、キャラクタリスティックの値の読み取りが許可されているならば `true` となる `boolean` 値を返します。

値
-

論理値です。

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothcharacteristicproperties-read |

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

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

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

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

`BluetoothCharacteristicProperties` インターフェイスの読み取り専用プロパティ **`broadcast`** は、Server Characteristic Configuration Descriptor によりキャラクタリスティックの値のブロードキャストが許可されているならば `true` となる `boolean` 値を返します。

値
-

論理値です。

仕様書
---

| Specification |
| --- |
| Web Bluetooth # dom-bluetoothcharacteristicproperties-broadcast |

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

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

`Lock` インターフェイスの読み取り専用プロパティ **`name`** は、ロックの要求時に決め、`LockManager.request` に渡された *名前* を返します。

ロックの名前は、ロックの要求時にスクリプトから渡されます。名前は、オリジン内で、複数のタブ、ワーカー、もしくはその他のコードが協調して用いる抽象リソースを表すよう、開発者が設定します。たとえば、ウェブアプリケーションの 1 個のタブだけがオフラインデータベースとネットワークリソースを同期してほしいときは、`"net_db_sync"` などのロック名を用いることができます。

値
-

文字列です。

例
-

以下の例では、`LockManager.request()` の呼び出し時にプロパティ `name` がどのように渡されるかを示します。`LockManager` は `navigator.locks` が返すオブジェクトです。


```js
navigator.locks.request("net\_db\_sync", show_lock_properties);

function show\_lock\_properties(lock) {
  console.log(`ロック名: ${lock.name}`);
  console.log(`ロックモード: ${lock.mode}`);
}
```

仕様書
---

| Specification |
| --- |
| Web Locks API # dom-lock-name |

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

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

`Lock` インターフェイスの読み取り専用プロパティ **`mode`** は、ロックの要求時に `LockManager.request()` に渡されたアクセスモードを返します。モードは `"exclusive"` (デフォルト) か `"shared"` のいずれかです。

値
-

`"exclusive"` か `"shared"` のうちのひとつです。

例
-

以下の例では、`LockManager.request()` の呼び出し時にプロパティ `mode` がどのように渡されるかを示します。`LockManager` は `navigator.locks` が返すオブジェクトです。


```js
// "exclusive" が表示されるはず (デフォルト)
navigator.locks.request("my\_resource", show_lock_properties);

// "exclusive" が表示されるはず
navigator.locks.request(
  "my\_resource",
  { mode: "exclusive" },
  show_lock_properties,
);

// "shared" が表示されるはず
navigator.locks.request(
  "my\_resource",
  { mode: "shared" },
  show_lock_properties,
);

function show\_lock\_properties(lock) {
  console.log(`ロック名: ${lock.name}`);
  console.log(`ロックモード: ${lock.mode}`);
}
```

仕様書
---

| Specification |
| --- |
| Web Locks API # dom-lock-mode |

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

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

**`results`** は `SpeechRecognitionEvent` インターフェイスの読み取り専用プロパティは、現在のセッションのすべての音声認識結果を表す `SpeechRecognitionResultList` (en-US) オブジェクトを返します。

具体的には、このオブジェクトには、返されたすべての最終結果と、それに続くすべての中間結果に対する現在の最良の仮説が保持されます。後続の `result` イベントが発行されると、中間結果はより新しい中間結果や最終結果によって上書きされる可能性があり、"results" の配列の終わりで配列の長さが減少すると、それらは削除される可能性すらあります。一方、最終結果は上書きされたり削除されたりすることはありません。

値
-

`SpeechRecognitionResultList` (en-US) オブジェクトです。

例
-

このコードは Speech color changer の例から取得したものです。


```js
recognition.onresult = (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
  const color = event.results[0][0].transcript;
  diagnostic.textContent = `Result received: ${color}.`;
  bg.style.backgroundColor = color;
};
```

仕様書
---

| Specification |
| --- |
| Web Speech API # dom-speechrecognitionevent-results |

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

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

関連情報
----

* ウェブ音声 API