JavaScript/Uint32Array
Uint32Array
編集概要
編集Uint32Array は、32ビットの符号なし整数(uint32)の型付き配列を表すJavaScriptオブジェクトです。各要素は 32 ビットの符号なし整数としてアクセス可能で、効率的に数値データを操作することができます。この配列は、基盤となる ArrayBuffer 上で動作します。
コンストラクタ
編集Uint32Array()
編集new Uint32Array(buffer [, byteOffset [, length]]) new Uint32Array(length) new Uint32Array(typedArray) new Uint32Array(iterable)
- 引数
- buffer: ArrayBuffer または SharedArrayBuffer
- byteOffset (オプション): バイト単位でのオフセット位置(デフォルトは 0)
- length (オプション): 配列の要素数
- length (数値): 配列の要素数を指定する
- typedArray: 既存の型付き配列を基にする
- iterable: 配列や反復可能オブジェクト(Map や Set など)
- 戻り値: 指定された条件に基づく新しい Uint32Array
プロパティ
編集Uint32Array.BYTES_PER_ELEMENT
編集- 各要素のバイト長(固定値: 4)
Uint32Array.prototype.length
編集- 配列内の要素数を返す(読み取り専用)
Uint32Array.prototype.buffer
編集- 基盤となる ArrayBuffer を返す
Uint32Array.prototype.byteOffset
編集- ArrayBuffer 内の先頭位置をバイト単位で返す
Uint32Array.prototype.byteLength
編集- バッファの全体のバイト長を返す
メソッド
編集Uint32Array.prototype.set()
編集uint32Array.set(array [, offset])
- 引数
- array: コピー元の配列(型付き配列または通常の配列)
- offset (オプション): 書き込みの開始インデックス(デフォルトは 0)
- 戻り値: なし
- 説明: 指定された配列から要素をコピーして設定する
Uint32Array.prototype.subarray()
編集uint32Array.subarray(begin [, end])
- 引数
- begin: 開始インデックス
- end (オプション): 終了インデックス(デフォルトは配列の終端)
- 戻り値: 元の配列の部分範囲を共有する新しい Uint32Array
使用例
編集// Uint32Arrayの作成 const buffer = new ArrayBuffer(16); const uint32Array = new Uint32Array(buffer); // 配列の要素を設定 uint32Array[0] = 4294967295; // 最大値 uint32Array[1] = 1234567890; console.log(uint32Array[0]); // 4294967295 console.log(uint32Array[1]); // 1234567890 // 配列のコピー const subArray = uint32Array.subarray(0, 1); console.log(subArray[0]); // 4294967295
注意点
編集- Uint32Array は 32 ビットの符号なし整数のみを扱い、他の型の値を代入しようとするとエラーになる
- バッファのバイト長は Uint32Array.BYTES_PER_ELEMENT(4バイト)の倍数である必要がある
- 符号なし整数の範囲は 0 から 4294967295 まで
関連オブジェクト
編集- JavaScript/Uint8Array
- JavaScript/Uint16Array
- JavaScript/TypedArray
- JavaScript/ArrayBuffer
- JavaScript/DataView
ブラウザサポート
編集- Chrome 4+
- Firefox 3.5+
- Safari 4+
- Edge 12+
仕様
編集- ECMAScript 2015 (ES6)