ArrayBuffer
JavaScriptでバイナリを扱う
buffer
物理メモリの領域
ArrayBuffer はバイナリデータでデータがずらーっと並んでるようなものです
UintXXArray は ArrayBuffer を決まったバイト数で配列に格納してプログラムで扱えるようにしたものです ref リニアなメモリをJS上で表現するためのしくみ
メモリ領域の確保
引数は確保したいバイナリの長さ
指定した長さのメモリ空間がバイナリを保存するために確保される
code:js
const buf = new ArrayBuffer(30);
メモリ領域に対して操作を行う
以下のいずれかを使う
TypeArray
DataView
Typed Array
型付き配列
通常のArrayと同じように扱える
これを使うことでArrayBuffer()で確保したメモリ空間へアクセスできる
code:js
const buf = new ArrayBuffer(10);
const view = new Uint8Array(buf);
view0 = 0x12; // bufの0番目に書き込む console.log(view)
高速に読み書き可能
種類
etc.
DataView
TypedArrayよりも高機能なバッファ操作用クラス
用途
画像処理
CanvasのImageData
関連
参考