ArrayBuffer.prototype.maxByteLength

Baseline 2024
新推出

自 ⁨2024 年 7 月⁩起,此功能可在最新的设备和浏览器版本上使用。此功能可能无法在较旧的设备或浏览器上使用。

maxByteLength 访问器属性,属于 ArrayBuffer 实例,用于返回此 ArrayBuffer 可以调整到的最大长度(以字节为单位)。

试一试

const buffer = new ArrayBuffer(8, { maxByteLength: 16 });

console.log(buffer.byteLength);
// Expected output: 8

console.log(buffer.maxByteLength);
// Expected output: 16

描述

maxByteLength 属性是一个访问器属性,其 set 访问器函数为 undefined,这意味着您只能读取此属性。该值在构造 ArrayBuffer 时确立,通过 ArrayBuffer() 构造函数的 maxByteLength 选项设置,并且无法更改。

如果此 ArrayBuffer 已被分离(detached),则此属性返回 0。如果此 ArrayBuffer 在构造时未指定 maxByteLength 值,则此属性返回的值等于该 ArrayBufferbyteLength 的值。

示例

使用 maxByteLength

在此示例中,我们创建一个 8 字节的缓冲区,该缓冲区可调整大小的最大长度为 16 字节,然后返回其 maxByteLength

js
const buffer = new ArrayBuffer(8, { maxByteLength: 16 });

buffer.maxByteLength; // 16

规范

规范
ECMAScript® 2026 语言规范
# sec-get-arraybuffer.prototype.maxbytelength

浏览器兼容性

另见