DataView() constructor
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.
The DataView() constructor creates DataView objects.
Try it
// Create an ArrayBuffer with a size in bytes
const buffer = new ArrayBuffer(16);
// Create a couple of views
const view1 = new DataView(buffer);
const view2 = new DataView(buffer, 12, 4); // From byte 12 for the next 4 bytes
view1.setInt8(12, 42); // Put 42 in slot 12
console.log(view2.getInt8(0));
// Expected output: 42
Syntax
new DataView(buffer)
new DataView(buffer, byteOffset)
new DataView(buffer, byteOffset, byteLength)
Parameters
buffer-
An existing
ArrayBufferorSharedArrayBufferto use as the storage backing the newDataViewobject. byteOffsetOptional-
The offset, in bytes, to the first byte in the above buffer for the new view to reference. If unspecified, the buffer view starts with the first byte.
byteLengthOptional-
The number of elements in the byte array. If unspecified, the view's length will match the buffer's length.
Return value
A new DataView object representing the specified data buffer.
Exceptions
RangeError-
Thrown if the
byteOffsetorbyteLengthparameter values result in the view extending past the end of the buffer. In other words,byteOffset + byteLength > buffer.byteLength.
Examples
>Using DataView
const buffer = new ArrayBuffer(16);
const view = new DataView(buffer, 0);
view.setInt16(1, 42);
view.getInt16(1); // 42
Specifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-dataview-constructor> |
Browser compatibility
Loading…