JavaScript

DataView オブジェクト

 編集:2022.08.11 by T.A.

DataView ビューは ArrayBuffer の多様な数値型を、プラットフォームのエンディアンに関係なく読み書きするための低水準インターフェイスを提供します。

¶省く

コンストラクター
new DataView()
新しい DataView オブジェクトを作成します。
インスタンス プロパティ
DataView.prototype.buffer 読取専用
このビューによって参照される ArrayBuffer。構築時に設定されるため、読み取り専用です。
DataView.prototype.byteLength 読取専用
ArrayBuffer の開始位置からこのビューの(バイト単位の)長さ。構築時に設定されるため、読み取り専用です。
DataView.prototype.byteOffset 読取専用
ArrayBuffer の開始位置からこのビューの(バイト単位の)オフセット。構築時に設定されるため、読み取り専用です。
インスタンス メソッド
DataView.prototype.getInt8()
ビューの開始位置から指定されたバイト単位のオフセット位置にある符号付き 8 ビット整数値(byte)を取得します。
DataView.prototype.getUint8()
ビューの開始位置から指定されたバイト単位のオフセット位置にある符号無し 8 ビット整数値(unsigned byte)を取得します。
DataView.prototype.getInt16()
ビューの開始位置から指定されたバイト単位のオフセット位置にある符号付き 16 ビット整数値(short)を取得します。
DataView.prototype.getUint16()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号無し 16 ビット整数値(unsigned short)を取得します。
DataView.prototype.getInt32()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 32 ビット整数値(long)を取得します。
DataView.prototype.getUint32()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号無し 32 ビット整数値(unsigned long)を取得します。
DataView.prototype.getFloat32()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 32 ビット浮動小数点数(float)を取得します。
DataView.prototype.getFloat64()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 64 ビット浮動小数点数(double)を取得します。
DataView.prototype.getBigInt64()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 64 ビット整数値(long long)を取得します。
DataView.prototype.getBigUint64()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号なし 64 ビット整数値(unsigned long long)を取得します。
DataView.prototype.setInt8()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 8 ビット整数値(byte)を格納します。
DataView.prototype.setUint8()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号なし 8 ビット整数値(unsigned byte)を格納します。
DataView.prototype.setInt16()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 16 ビット整数値(short)を格納します。
DataView.prototype.setUint16()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号無し 16 ビット整数値(unsigned short)を格納します。
DataView.prototype.setInt32()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 32 ビット整数値(long)を格納します。
DataView.prototype.setUint32()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号無し 32 ビット整数値(unsigned long)を格納します。
DataView.prototype.setFloat32()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 32 ビット浮動小数点数(float)を格納します。
DataView.prototype.setFloat64()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 64 ビット浮動小数点数(double)を格納します。
DataView.prototype.setBigInt64()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号あり 64 ビット整数値(long long)を格納します。
DataView.prototype.setBigUint64()
ビューの開始位置からの指定されたバイト単位のオフセット位置にある符号なし 64 ビット整数値(unsigned long long)を格納します。
var buffer = new ArrayBuffer(16);
var view = new DataView(buffer, 0);

view.setInt16(1, 42);
view.getInt16(1); // 42
B=new ArrayBuffer(5);
B[0]=10; B[1]=20; B[2]=30; //B=[10, 20, 30, 0, 0]
V=new DataView(B, 1); //=[object]:[object DataView]
D=V.getInt8(0);    //=0。ArrayBufferに書き込んだのをDataViewにしてもだめなようだ。
V.setInt8(0, 100); //オフセット0に書き込み
D=V.getInt8(0);    //オフセット0を読み込み

テスト