SharedArrayBuffer() コンストラクター
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since December 2021.
* Some parts of this feature may have varying levels of support.
メモ: SharedArrayBuffer
コンストラクターは、特定のセキュリティの要件に適合しない限り、グローバルに利用できるとは限りません。
SharedArrayBuffer()
コンストラクターは SharedArrayBuffer
オブジェクトを生成し、これは ArrayBuffer
オブジェクトと似た、汎用的な、固定長の生のバイナリーデータバッファーを表します。
試してみましょう
// SharedArrayBuffer をバイト単位のサイズで作成
const buffer = new SharedArrayBuffer(8);
console.log(buffer.byteLength);
// 期待される出力: 8
構文
引数
length
-
生成する配列バッファーの長さをバイト数で指定します。
options
省略可-
以下のプロパティを持つことができるオブジェクトです。
maxByteLength
省略可-
共有配列バッファーのサイズを変更できる最大サイズ(バイト単位)です。
返値
指定したサイズの新しい SharedArrayBuffer
オブジェクトで、指定した場合は、その maxByteLength
プロパティを指定した maxByteLength
に設定します。コンテンツは 0 に初期化されます。
例
SharedArrayBuffer を生成するには常に new 演算子を使用する
伸長可能な SharedArrayBuffer の伸長
この例では、最大長 16 バイトまで伸長可能な 8 バイトのバッファーを作成し、それを grow()
で 12 バイトに伸長します。
const buffer = new SharedArrayBuffer(8, { maxByteLength: 16 });
buffer.grow(12);
メモ: maxByteLength
は、用途に応じて実現可能な最小値に設定することをお勧めします。メモリー不足エラーのリスクを縮小するため、 1073741824
(1GB) を超えることは決してないようにしてください。
仕様書
Specification |
---|
ECMAScript® 2026 Language Specification # sec-sharedarraybuffer-constructor |