TypedArray.prototype.subarray()

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.

Die subarray()-Methode von TypedArray Instanzen gibt ein neues Typed Array auf dem gleichen ArrayBuffer Speicher und mit den gleichen Elementtypen wie dieses Typed Array zurück. Der Anfangs-Offset ist inklusive und der End-Offset ist exklusiv.

Probieren Sie es aus

const uint8 = new Uint8Array([10, 20, 30, 40, 50]);

console.log(uint8.subarray(1, 3));
// Expected output: Uint8Array [20, 30]

console.log(uint8.subarray(1));
// Expected output: Uint8Array [20, 30, 40, 50]

Syntax

js
subarray()
subarray(begin)
subarray(begin, end)

Parameter

begin Optional

Element, bei dem begonnen werden soll. Der Offset ist inklusiv. Das gesamte Array wird in die neue Ansicht einbezogen, wenn dieser Wert nicht angegeben wird.

end Optional

Element, bei dem beendet werden soll. Der Offset ist exklusiv. Wenn nicht angegeben, werden alle Elemente von dem durch begin spezifizierten bis zum Ende des Arrays in die neue Ansicht einbezogen.

Rückgabewert

Ein neues TypedArray Objekt.

Beschreibung

Der durch begin und end spezifizierte Bereich wird an den gültigen Indexbereich für das aktuelle Array angepasst; wenn die berechnete Länge des neuen Arrays negativ wäre, wird sie auf Null begrenzt. Wenn entweder begin oder end negativ ist, bezieht es sich auf einen Index vom Ende des Arrays anstelle des Anfangs.

Beachten Sie auch, dass dies eine neue Ansicht auf den vorhandenen Speicherpuffer erstellt; Änderungen an den Inhalten des neuen Objekts wirken sich auf das ursprüngliche Objekt aus und umgekehrt.

Beispiele

Verwendung der Methode subarray()

js
const buffer = new ArrayBuffer(8);
const uint8 = new Uint8Array(buffer);
uint8.set([1, 2, 3]);

console.log(uint8); // Uint8Array [ 1, 2, 3, 0, 0, 0, 0, 0 ]

const sub = uint8.subarray(0, 4);

console.log(sub); // Uint8Array [ 1, 2, 3, 0 ]

Spezifikationen

Specification
ECMAScript® 2026 Language Specification
# sec-%typedarray%.prototype.subarray

Browser-Kompatibilität

Siehe auch