ArrayBuffer()-Konstruktor

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

* Some parts of this feature may have varying levels of support.

Der ArrayBuffer()-Konstruktor erstellt ArrayBuffer-Objekte.

Probieren Sie es aus

// Create an ArrayBuffer with a size in bytes
const buffer = new ArrayBuffer(8);

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

Syntax

js
new ArrayBuffer(length)
new ArrayBuffer(length, options)

Hinweis: ArrayBuffer() kann nur mit new konstruiert werden. Ein Aufruf ohne new führt zu einem TypeError.

Parameter

length

Die Größe des zu erstellenden Arraypuffers in Bytes.

options Optional

Ein Objekt, das die folgenden Eigenschaften enthalten kann:

maxByteLength Optional

Die maximale Größe in Bytes, auf die der Arraypuffer vergrößert werden kann.

Rückgabewert

Ein neues ArrayBuffer-Objekt mit der angegebenen Größe, dessen maxByteLength-Eigenschaft auf den angegebenen maxByteLength gesetzt wird, falls einer angegeben wurde. Der Inhalt wird auf 0 initialisiert.

Ausnahmen

RangeError

Wird in einem der folgenden Fälle ausgelöst:

  • length oder maxByteLength ist größer als Number.MAX_SAFE_INTEGER (≥ 253) oder negativ.
  • length ist größer als maxByteLength.

Beispiele

Erstellen eines ArrayBuffer

In diesem Beispiel erstellen wir einen 8-Byte-Puffer mit einer Int32Array-Ansicht, die auf den Puffer verweist:

js
const buffer = new ArrayBuffer(8);
const view = new Int32Array(buffer);

Erstellen eines resizbaren ArrayBuffer

In diesem Beispiel erstellen wir einen 8-Byte-Puffer, der auf eine maximale Länge von 16 Bytes vergrößert werden kann, und dann resize() wir ihn auf 12 Bytes:

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

buffer.resize(12);

Hinweis: Es wird empfohlen, maxByteLength auf den kleinstmöglichen Wert für Ihren Anwendungsfall festzulegen. Er sollte niemals 1073741824 (1GB) überschreiten, um das Risiko von Speichermangel-Fehlern zu reduzieren.

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-arraybuffer-constructor

Browser-Kompatibilität

Siehe auch