ArrayBuffer オブジェクトは、一般的な固定長の生のバイナリデータバッファを表現するために使用されます。
ArrayBuffer はバイトの配列で、他の言語では「バイト配列」と呼ばれることが多いです。ArrayBuffer の内容を直接操作することはできません。代わりに、型付きの配列オブジェクトか DataView オブジェクトのいずれかを作成して、バッファを特定の形式で表現し、バッファの内容を読み書きするためにそれを使用します。
ArrayBuffer() コンストラクタは、指定した長さの ArrayBuffer をバイト単位で作成します。Base64 文字列やローカルファイルなどの既存のデータから配列バッファを取得することもできます。
コンストラクタ
ArrayBuffer()- 新しい
ArrayBufferオブジェクトを作成します。
静的プロパティ
get ArrayBuffer[@@species]- 派生オブジェクトを作成する際に使用するコンストラクタ関数です。
静的メソッド
ArrayBuffer.isView(arg)argが型付き配列オブジェクトやDataViewのような ArrayBuffer ビューのいずれかである場合にtrueを返します。それ以外の場合はfalseを返します。
インスタンスプロパティ
ArrayBuffer.prototype.byteLengthArrayBufferの読み取り専用サイズ (バイト単位)。これは配列が構築されたときに設定され、変更することはできません。
インスタンスメソッド
ArrayBuffer.prototype.slice()ArrayBufferのバイト数のコピーであり、その内容は、begin(含む) からend(排他的) までのバイト数である。beginまたはendのどちらかが負の値の場合は、配列の先頭からではなく、配列の末尾からのインデックスを指します。
例
ArrayBuffer の作成
この例では、バッファを参照する Int32Array ビューを持つ 8 バイトバッファを作成します。
const buffer = new ArrayBuffer(8); const view = new Int32Array(buffer);
仕様
| 仕様書 |
|---|
| ECMAScript (ECMA-262) ArrayBuffer の定義 |
ブラウザー実装状況
このページの互換性一覧表は、構造化データから生成されています。データに貢献したい方は、https://github.com/mdn/browser-compat-data をチェックしてプルリクエストを送ってください。
Update compatibility data on GitHub
| デスクトップ | モバイル | サーバー | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ArrayBuffer | Chrome 完全対応 7 | Edge 完全対応 12 | Firefox 完全対応 4 | IE 完全対応 10 | Opera 完全対応 11.6 | Safari 完全対応 5.1 | WebView Android 完全対応 4 | Chrome Android 完全対応 18 | Firefox Android 完全対応 4 | Opera Android 完全対応 12 | Safari iOS 完全対応 4.2 | Samsung Internet Android 完全対応 1.0 | nodejs 完全対応 0.10 |
ArrayBuffer() constructor | Chrome 完全対応 7 | Edge 完全対応 12 | Firefox 完全対応 4 | IE 完全対応 10 | Opera 完全対応 11.6 | Safari 完全対応 5.1 | WebView Android 完全対応 4 | Chrome Android 完全対応 18 | Firefox Android 完全対応 4 | Opera Android 完全対応 12 | Safari iOS 完全対応 4.2 | Samsung Internet Android 完全対応 1.0 | nodejs 完全対応 0.10 |
byteLength | Chrome 完全対応 7 | Edge 完全対応 12 | Firefox 完全対応 4 | IE 完全対応 10 | Opera 完全対応 11.6 | Safari 完全対応 5.1 | WebView Android 完全対応 4 | Chrome Android 完全対応 18 | Firefox Android 完全対応 4 | Opera Android 完全対応 12 | Safari iOS 完全対応 4.2 | Samsung Internet Android 完全対応 1.0 | nodejs 完全対応 0.10 |
isView | Chrome 完全対応 32 | Edge 完全対応 12 | Firefox 完全対応 29 | IE 完全対応 11 | Opera 完全対応 19 | Safari 完全対応 7 | WebView Android 完全対応 ≤37 | Chrome Android 完全対応 32 | Firefox Android 完全対応 29 | Opera Android 完全対応 19 | Safari iOS 完全対応 7 | Samsung Internet Android 完全対応 2.0 | nodejs 完全対応 4.0.0 |
slice | Chrome 完全対応 17 | Edge 完全対応 12 | Firefox
完全対応
12
| IE 完全対応 11 | Opera 完全対応 12.1 | Safari 完全対応 6 | WebView Android 完全対応 ≤37 | Chrome Android 完全対応 18 | Firefox Android
完全対応
14
| Opera Android 完全対応 12.1 | Safari iOS 完全対応 6 | Samsung Internet Android 完全対応 1.0 | nodejs 完全対応 0.12 |
@@species | Chrome 完全対応 51 | Edge 完全対応 13 | Firefox 完全対応 48 | IE 未対応 なし | Opera 完全対応 38 | Safari 完全対応 10 | WebView Android 完全対応 51 | Chrome Android 完全対応 51 | Firefox Android 完全対応 48 | Opera Android 完全対応 41 | Safari iOS 完全対応 10 | Samsung Internet Android 完全対応 5.0 | nodejs
完全対応
6.5.0
|
凡例
- 完全対応
- 完全対応
- 未対応
- 未対応
- 実装ノートを参照してください。
- 実装ノートを参照してください。
- ユーザーが明示的にこの機能を有効にしなければなりません。
- ユーザーが明示的にこの機能を有効にしなければなりません。