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 typisiertes Array im selben ArrayBuffer-Speicher und mit den gleichen Elementtypen wie dieses typisierte Array zurück. Der Startversatz ist inklusive und der Endversatz 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 wird. Der Versatz ist inklusive. Das gesamte Array wird in der neuen Ansicht enthalten sein, wenn dieser Wert nicht angegeben wird.

end Optional

Element, bei dem geendet wird. Der Versatz ist exklusiv. Wenn nicht angegeben, werden alle Elemente von dem durch begin angegebenen bis zum Ende des Arrays in der neuen Ansicht enthalten sein.

Rückgabewert

Ein neues TypedArray-Objekt.

Beschreibung

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

Es ist auch zu beachten, dass dies eine neue Ansicht auf den bestehenden Puffer erstellt; Änderungen am Inhalt des neuen Objekts wirken sich auf das ursprüngliche Objekt aus und umgekehrt.

Beispiele

Verwendung der subarray()-Methode

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