TypedArray.prototype.buffer
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Thebuffer accessor property ofTypedArray instances returns theArrayBuffer orSharedArrayBuffer referenced by this typed array at construction time.
In this article
Try it
// Create an ArrayBuffer with a size in bytesconst buffer = new ArrayBuffer(8);const uint16 = new Uint16Array(buffer);console.log(uint16.buffer.byteLength);// Expected output: 8Description
Thebuffer property is an accessor property whose set accessor function isundefined, meaning that you can only read this property. The value is established when theTypedArray is constructed and cannot be changed.TypedArray is one of theTypedArray objects.
Because a typed array is aview of a buffer, the underlying buffer may be longer than the typed array itself.
Examples
>Using the buffer property
js
const buffer = new ArrayBuffer(8);const uint16 = new Uint16Array(buffer);uint16.buffer; // ArrayBuffer { byteLength: 8 }Accessing the underlying buffer from a sliced array view
js
const buffer = new ArrayBuffer(1024);const arr = new Uint8Array(buffer, 64, 128);console.log(arr.byteLength); // 128console.log(arr.buffer.byteLength); // 1024console.log(arr.buffer === buffer); // trueSpecifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-get-%typedarray%.prototype.buffer> |