DataView() コンストラクター
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
DataView()
コンストラクターは、 DataView
オブジェクトを生成するために使用します。
試してみましょう
構文
new DataView(buffer [, byteOffset [, byteLength]])
引数
buffer
-
既存の
ArrayBuffer
またはSharedArrayBuffer
で、新しいDataView
オブジェクトの背景となるストレージとして使用されます。 byteOffset
省略可-
新しいビューが参照するバッファーの最初のバイトまでのオフセットをバイト単位で指定します。指定されていない場合、バッファービューは最初のバイトから始まります。
byteLength
省略可-
バイト配列の要素数です。指定しない場合、ビューの長さはバッファーの長さと一致します。
返値
指定されたデータバッファーを表す DataView
オブジェクトです。 (これはおそらくあまり役に立たない説明でした。)
返されるオブジェクトは、バイトの配列バッファーの「インタープリター」と考えることができます。 - これは読み書きの際に、バッファー内に正しく収まるように数値を変換する方法を知っています。これは、整数や浮動小数点数の変換、エンディアン、その他バイナリ形式で数値を表現する際の詳細を扱うことを意味します。
例外
RangeError
-
byteOffset
やbyteLength
引数の値がバッファーの末尾を超えて広がる結果になる場合に発生します。例えば、バッファーが 16 バイトの長さで、
byteOffset
が 8 バイト、byteLength
が 10 バイトの場合、バッファーの全長を 2 バイト超えるビューを展開しようとするので、このエラーが発生します。
例
DataView の使用
var buffer = new ArrayBuffer(16);
var view = new DataView(buffer, 0);
view.setInt16(1, 42);
view.getInt16(1); // 42
仕様書
Specification |
---|
ECMAScript Language Specification # sec-dataview-constructor |
ブラウザーの互換性
BCD tables only load in the browser