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 auf demselben ArrayBuffer-Speicher und mit denselben Elementtypen wie dieses typisierte Array zurück. Der Startversatz ist inklusiv 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 inklusiv. Das gesamte Array wird in die neue Ansicht einbezogen, falls dieser Wert nicht angegeben ist.

end Optional

Element, bei dem geendet wird. Der Versatz ist exklusiv. Wenn nicht angegeben, werden alle Elemente vom durch begin spezifizierten bis zum Ende des Arrays in die neue Ansicht einbezogen.

Rückgabewert

Ein neues TypedArray-Objekt.

Beschreibung

Der Bereich, der durch begin und end angegeben ist, 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 es auf Null beschränkt. Wenn entweder begin oder end negativ ist, bezieht sich dies auf einen Index vom Ende des Arrays anstatt vom Anfang.

Beachten Sie auch, dass hierbei eine neue Ansicht des vorhandenen Puffers erstellt wird; Ä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