TypedArray.prototype.set() - JavaScript | MDN

Baseline Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.

Die set()-Methode von TypedArray-Instanzen speichert mehrere Werte im typisierten Array, indem sie Eingabewerte aus einem angegebenen Array liest.

Probieren Sie es aus

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

// Copy the values into the array starting at index 3
uint8.set([1, 2, 3], 3);

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

Syntax

js

set(array)
set(array, targetOffset)

set(typedarray)
set(typedarray, targetOffset)

Parameter

array

Das Array, aus dem Werte kopiert werden. Alle Werte aus dem Quellarray werden in das Zielarray kopiert, es sei denn, die Länge des Quellarrays plus der Zieloffset überschreitet die Länge des Zielarrays, in diesem Fall wird eine Ausnahme ausgelöst.

typedarray

Wenn das Quellarray ein typisiertes Array ist, können die beiden Arrays den gleichen zugrunde liegenden ArrayBuffer teilen; die JavaScript-Engine kopiert intelligent den Quellbereich des Puffers in den Zielbereich.

targetOffset Optional

Der Offset im Zielarray, bei dem mit dem Schreiben von Werten aus dem Quellarray begonnen werden soll. Wenn dieser Wert weggelassen wird, wird 0 angenommen (das heißt, das Quellarray überschreibt Werte im Zielarray beginnend bei Index 0).

Rückgabewert

Keiner (undefined).

Ausnahmen

RangeError

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

  • Ein Element wird über das Ende des typisierten Arrays hinaus gespeichert, entweder weil targetOffset zu groß ist oder weil array oder typedarray zu groß ist.
  • targetOffset ist negativ.

Beispiele

Verwendung von set()

js

const buffer = new ArrayBuffer(8);
const uint8 = new Uint8Array(buffer);

uint8.set([1, 2, 3], 3);

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

Spezifikationen

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

Browser-Kompatibilität

Siehe auch

Help improve MDN

Erfahren Sie, wie Sie beitragen können Diese Seite wurde automatisch aus dem Englischen übersetzt.