ArrayBuffer.prototype.resize()

Baseline 2024

Newly available

Since July 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

Die resize() Methode von ArrayBuffer Instanzen ändert die Größe des ArrayBuffer auf die angegebene Größe in Bytes.

Probieren Sie es aus

Syntax

js
resize(newLength)

Parameter

newLength

Die neue Länge in Bytes, auf die der ArrayBuffer geändert werden soll.

Rückgabewert

Keiner (undefined).

Ausnahmen

TypeError

Wird ausgelöst, wenn der ArrayBuffer getrennt oder nicht änderbar ist.

RangeError

Wird ausgelöst, wenn newLength größer als die maxByteLength des ArrayBuffer ist.

Beschreibung

Die resize() Methode ändert die Größe eines ArrayBuffer auf die durch den newLength Parameter angegebene Größe, vorausgesetzt, der ArrayBuffer ist änderbar und die neue Größe ist kleiner oder gleich der maxByteLength des ArrayBuffer. Neue Bytes werden mit 0 initialisiert.

Beachten Sie, dass Sie mit resize() sowohl verkleinern als auch vergrößern können — es ist zulässig, dass newLength kleiner als die aktuelle byteLength des ArrayBuffer ist.

Beispiele

Verwendung von resize()

In diesem Beispiel erstellen wir einen 8-Byte-Puffer, der auf eine maximale Länge von 16 Byte geändert werden kann, prüfen dann seine resizable-Eigenschaft und ändern die Größe, wenn resizable true zurückgibt:

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

if (buffer.resizable) {
  console.log("Buffer is resizable!");
  buffer.resize(12);
}

Spezifikationen

Specification
ECMAScript Language Specification
# sec-arraybuffer.prototype.resize

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch