AbdulElahGwaith's picture
Upload folder using huggingface_hub
780c9fe verified
metadata
title: ArrayBuffer.prototype.maxByteLength
short-title: maxByteLength
slug: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/maxByteLength
page-type: javascript-instance-accessor-property
browser-compat: javascript.builtins.ArrayBuffer.maxByteLength
sidebar: jsref

The maxByteLength accessor property of {{jsxref("ArrayBuffer")}} instances returns the maximum length (in bytes) that this array buffer can be resized to.

{{InteractiveExample("JavaScript Demo: ArrayBuffer.prototype.maxByteLength")}}

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

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

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

Description

The maxByteLength property is an accessor property whose set accessor function is undefined, meaning that you can only read this property. The value is established when the array is constructed, set via the maxByteLength option of the {{jsxref("ArrayBuffer/ArrayBuffer", "ArrayBuffer()")}} constructor, and cannot be changed.

This property returns 0 if this ArrayBuffer has been detached. If this ArrayBuffer was constructed without specifying a maxByteLength value, this property returns a value equal to the value of the ArrayBuffer's {{jsxref("ArrayBuffer/byteLength", "byteLength")}}.

Examples

Using maxByteLength

In this example, we create an 8-byte buffer that is resizable to a max length of 16 bytes, then return its maxByteLength:

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

buffer.maxByteLength; // 16

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also

  • {{jsxref("ArrayBuffer")}}
  • {{jsxref("ArrayBuffer.prototype.byteLength")}}
  • {{jsxref("ArrayBuffer.prototype.resize()")}}