【JavaScript ECMAScript】DataView::DataView.prototype.getInt32インスタンスメソッドの使い方
DataView.prototype.getInt32()インスタンスメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
DataView.prototype.getInt32()メソッドは、DataViewオブジェクトに格納されたバイナリデータから、指定されたバイトオフセット位置にある符号付き32ビット整数(signed 32-bit integer)を読み取り、その値を返すメソッドです。DataViewは、ArrayBufferなどの低レベルのバイナリデータバッファ上で、様々な数値型(整数や浮動小数点数など)をバイト単位で柔軟に読み書きするためのインターフェースを提供します。
このメソッドを使用すると、まず読み取りを開始する位置を0から始まる「バイトオフセット」で指定します。例えば、オフセット0を指定すれば先頭から、オフセット4を指定すれば先頭から4バイト目を起点として読み取ります。また、データの解釈方法である「バイトオーダー(エンディアンネス)」を指定できます。デフォルトはビッグエンディアンですが、オプションでtrueを指定するとリトルエンディアンとして解釈します。これにより、異なるシステムやネットワークプロトコル間でデータのやり取りを行う際に、正しい数値としてデータを読み込むことが可能になります。
主に、ネットワークから受信したバイナリデータや、特定のファイルフォーマットのデータを解析する際に、整数値を正確に抽出するために利用されます。これは、データが特定のバイト順序で並んでいる場合に特に重要となり、プログラムが期待する形式でデータを取り扱う上で不可欠な機能です。
構文(syntax)
1const buffer = new ArrayBuffer(4); 2const dataView = new DataView(buffer); 3 4// byteOffset 0 から符号付き32ビット整数をビッグエンディアンで取得 5const valueBigEndian = dataView.getInt32(0); 6 7// byteOffset 0 から符号付き32ビット整数をリトルエンディアンで取得 8const valueLittleEndian = dataView.getInt32(0, true);
引数(parameters)
byteOffset, littleEndian = false
- byteOffset: number: 読み取るバイト位置
- littleEndian: boolean = false: trueの場合リトルエンディアン、falseの場合ビッグエンディアン
戻り値(return)
number
指定されたオフセットから、符号付き32ビット整数値を読み取って返します。