The byteLength accessor property represents the length (in bytes) of this view from the start of its ArrayBuffer or SharedArrayBuffer.




The byteLength property is an accessor property whose set accessor function is undefined, meaning that you can only read this property. The value is established when an DataView is constructed and cannot be changed. If the DataView is not specifying an offset or a byteLength, the byteLength of the referenced ArrayBuffer or SharedArrayBuffer will be returned.


Using the byteLength property

var buffer = new ArrayBuffer(8);
var dataview = new DataView(buffer);
dataview.byteLength; // 8 (matches the byteLength of the buffer)

var dataview2 = new DataView(buffer, 1, 5);
dataview2.byteLength; // 5 (as specified when constructing the DataView)

var dataview3 = new DataView(buffer, 2);
dataview3.byteLength; // 6 (due to the offset of the constructed DataView)


Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'DataView.prototype.byteLength' in that specification.
Standard Initial definition.
ECMAScript 2017 Draft (ECMA-262)
The definition of 'DataView.prototype.byteLength' in that specification.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 9.0 15.0 (15.0) 10 12.1 5.1
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support 4.0 (Yes) 15.0 (15) ? 12.0 4.2

See also

Document Tags and Contributors

 Contributors to this page: fscholz, darul75
 Last updated by: fscholz,