Typed Arrays là object giống mảng, cung cấp cách truy cập dữ liệu nhị phân thô (raw binary data).
Khác với Array thường
Array.isArray(typedArray)→false- Không hỗ trợ hết các method của Array (pop, push, splice... một số không có)
- Kích thước cố định (fixed length)
- Chỉ chứa giá trị số với kiểu xác định (Int8, Uint8, Int32, Float64...)
Cơ chế: Buffer + View
- ArrayBuffer: Khối nhị phân thô, không có format, không truy cập trực tiếp.
- View (TypedArray / DataView): Cung cấp kiểu dữ liệu, offset, độ dài → biến buffer thành typed array.
Ví dụ
// Buffer 16 bytes
let buffer = new ArrayBuffer(16);
// View: mảng 32-bit signed integer
let int32View = new Int32Array(buffer);
for (let i = 0; i < int32View.length; i++) {
int32View[i] = i * 2;
}
console.log(int32View); // Int32Array { 0: 0, 1: 2, 2: 4, 3: 6 }
Dùng cho: xử lý binary data, WebGL, Web Audio, network protocol, performance-critical code.