ArrayBuffer.prototype.resize()
Baseline 2024Newly 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 Methode resize()
von ArrayBuffer
-Instanzen ändert die Größe des ArrayBuffer
auf die angegebene Größe in Byte.
Probieren Sie es aus
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
resize(newLength)
Parameter
newLength
-
Die neue Länge in Byte, auf die der
ArrayBuffer
geändert werden soll.
Rückgabewert
Keiner (undefined
).
Ausnahmen
TypeError
-
Wird ausgelöst, wenn der
ArrayBuffer
gelöst ist oder nicht änderbar ist. RangeError
-
Wird ausgelöst, wenn
newLength
größer ist als diemaxByteLength
desArrayBuffer
.
Beschreibung
Die Methode resize()
ändert die Größe eines ArrayBuffer
auf die durch den Parameter newLength
angegebene Größe, vorausgesetzt, der ArrayBuffer
ist resizable (änderbar) und die neue Größe ist kleiner oder gleich der maxByteLength
des ArrayBuffer
. Neue Bytes werden mit 0 initialisiert.
Beachten Sie, dass Sie resize()
sowohl verwenden können, um einen ArrayBuffer
zu verkleinern als auch zu vergrößern — es ist zulässig, dass newLength
kleiner ist als die aktuelle byteLength
des ArrayBuffer
.
Beispiele
Verwendung von resize()
In diesem Beispiel erstellen wir einen 8-Byte-Puffer, der auf eine maximale Länge von 16 Byte erweiterbar ist. Anschließend überprüfen wir seine resizable
-Eigenschaft und ändern die Größe, falls resizable
den Wert true
zurückgibt:
const buffer = new ArrayBuffer(8, { maxByteLength: 16 });
if (buffer.resizable) {
console.log("Buffer is resizable!");
buffer.resize(12);
}
Spezifikationen
Specification |
---|
ECMAScript® 2025 Language Specification # sec-arraybuffer.prototype.resize |
Browser-Kompatibilität
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
resize |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
- No support
- No support