ArrayBuffer.prototype.resize()
Baseline
2024
Neu verfügbar
Seit July 2024 funktioniert diese Funktion auf aktuellen Geräten und in aktuellen Browserversionen. Auf älteren Geräten oder in älteren Browsern funktioniert sie möglicherweise nicht.
Die resize()-Methode von ArrayBuffer-Instanzen ändert die GröÃe des ArrayBuffer auf die angegebene GröÃe in Bytes.
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 Bytes, auf die der
ArrayBuffergeändert werden soll.
Rückgabewert
Keiner (undefined).
Ausnahmen
TypeError-
Wird ausgelöst, wenn der
ArrayBuffergetrennt ist oder nicht veränderbar ist. RangeError-
Wird ausgelöst, wenn
newLengthgröÃer ist als diemaxByteLengthdesArrayBuffer.
Beschreibung
Die resize()-Methode ändert die GröÃe eines ArrayBuffer auf die durch den Parameter newLength angegebene GröÃe, vorausgesetzt, der ArrayBuffer ist veränderbar und die neue GröÃe ist kleiner oder gleich der maxByteLength des ArrayBuffer. Neue Bytes werden auf 0 initialisiert.
Beachten Sie, dass Sie resize() verwenden können, um einen ArrayBuffer sowohl zu verkleinern als auch zu vergröÃern â es ist zulässig, dass newLength kleiner als die aktuelle byteLength des ArrayBuffer ist.
Beispiele
>Verwenden von resize()
In diesem Beispiel erstellen wir einen 8-Byte-Puffer, der auf eine maximale Länge von 16 Bytes veränderbar ist. Dann prüfen wir seine resizable-Eigenschaft und ändern die GröÃe, wenn resizable true zurückgibt:
const buffer = new ArrayBuffer(8, { maxByteLength: 16 });
if (buffer.resizable) {
console.log("Buffer is resizable!");
buffer.resize(12);
}
Spezifikationen
| Spezifikation |
|---|
| ECMAScript® 2027 Language Specification> # sec-arraybuffer.prototype.resize> |