TypedArray.prototype.set()
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 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
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 weilarray
odertypedarray
zu groß ist. targetOffset
ist negativ.
- Ein Element wird über das Ende des typisierten Arrays hinaus gespeichert, entweder weil
Beispiele
Verwendung von set()
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
Specification |
---|
ECMAScript® 2026 Language Specification # sec-%typedarray%.prototype.set |