ArrayBuffer.prototype.resize()
En esta página
The resize() method of {{jsxref("ArrayBuffer")}} instances resizes the ArrayBuffer to the specified size, in bytes.
{{InteractiveExample("JavaScript Demo: ArrayBuffer.prototype.resize()")}}
```js interactive-example const buffer = new ArrayBuffer(8, { maxByteLength: 16 });
console.log(buffer.byteLength); // Expected output: 8
buffer.resize(12);
console.log(buffer.byteLength); // Expected output: 12
## Syntax
```js-nolint
resize(newLength)
Parameters#
newLength- : The new length, in bytes, to resize the
ArrayBufferto.
Return value#
None ({{jsxref("undefined")}}).
Exceptions#
- {{jsxref("TypeError")}}
- : Thrown if the
ArrayBufferis detached or is not resizable. - {{jsxref("RangeError")}}
- : Thrown if
newLengthis larger than the {{jsxref("ArrayBuffer/maxByteLength", "maxByteLength")}} of theArrayBuffer.
Description#
The resize() method resizes an ArrayBuffer to the size specified by the newLength parameter, provided that the ArrayBuffer is resizable and the new size is less than or equal to the {{jsxref("ArrayBuffer/maxByteLength", "maxByteLength")}} of the ArrayBuffer. New bytes are initialized to 0.
Note that you can use resize() to shrink as well as grow an ArrayBuffer — it is permissible for newLength to be smaller than the ArrayBuffer's current {{jsxref("ArrayBuffer/byteLength", "byteLength")}}.
Examples#
Using resize()#
In this example, we create a 8-byte buffer that is resizable to a max length of 16 bytes, then check its resizable property, resizing it if resizable returns true:
const buffer = new ArrayBuffer(8, { maxByteLength: 16 });
if (buffer.resizable) {
console.log("Buffer is resizable!");
buffer.resize(12);
}
Specifications#
{{Specifications}}
Browser compatibility#
{{Compat}}
See also#
- {{jsxref("ArrayBuffer")}}
- {{jsxref("ArrayBuffer.prototype.resizable")}}
- {{jsxref("ArrayBuffer.prototype.maxByteLength")}}