此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

DataView.prototype.byteLength

基线 广泛可用

自 2015年7月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

byteLength 属性描述了视图从它的 ArrayBuffer 开始的字节长度。

尝试一下

// Create an ArrayBuffer with a size in bytes
const buffer = new ArrayBuffer(16);

const view1 = new DataView(buffer);
const view2 = new DataView(buffer, 12, 4); // From byte 12 for the next 4 bytes

console.log(view1.byteLength + view2.byteLength); // 16 + 4
// Expected output: 20

语法

dataview.byteLength

描述

byteLength 属性是一个获取 (accessor) 属性,它的 set 属性为 undefined,这意味着它是只读的。值在 DataView 被创建时就确定了,且不能改变。如果 DataView 没有指定偏移量或 byteLength,那么被引用的 ArrayBuffer 的字节长度将被返回。

Examples

Using the byteLength property

js
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)

规范

规范
ECMAScript® 2027 Language Specification
# sec-get-dataview.prototype.bytelength

浏览器兼容性

参见