TypedArray.prototype.reduce()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2016.
Die reduce()
Methode von TypedArray
Instanzen führt eine benutzerdefinierte "Reducer"-Callback-Funktion für jedes Element des typisierten Arrays aus, in Reihenfolge, wobei der Rückgabewert der Berechnung des vorherigen Elements übergeben wird. Das Endergebnis des Ablaufens des Reducers über alle Elemente des typisierten Arrays ist ein einzelner Wert. Diese Methode hat denselben Algorithmus wie Array.prototype.reduce()
.
Probieren Sie es aus
const uint8 = new Uint8Array([0, 1, 2, 3]);
function sum(accumulator, currentValue) {
return accumulator + currentValue;
}
console.log(uint8.reduce(sum));
// Expected output: 6
Syntax
reduce(callbackFn)
reduce(callbackFn, initialValue)
Parameter
callbackFn
-
Eine Funktion, die für jedes Element im typisierten Array ausgeführt wird. Ihr Rückgabewert wird zum Wert des
accumulator
-Parameters bei der nächsten Ausführung voncallbackFn
. Bei der letzten Ausführung wird der Rückgabewert zum Rückgabewert vonreduce()
. Die Funktion wird mit den folgenden Argumenten aufgerufen:accumulator
-
Der Wert, der sich aus dem vorherigen Aufruf von
callbackFn
ergibt. Beim ersten Aufruf ist sein WertinitialValue
, falls letzterer angegeben ist; andernfalls ist sein Wertarray[0]
. currentValue
-
Der Wert des aktuellen Elements. Beim ersten Aufruf ist sein Wert
array[0]
, fallsinitialValue
angegeben ist; andernfalls ist sein Wertarray[1]
. currentIndex
-
Die Indexposition von
currentValue
im typisierten Array. Beim ersten Aufruf ist sein Wert0
, fallsinitialValue
angegeben ist, andernfalls1
. array
-
Das typisierte Array, auf dem
reduce()
aufgerufen wurde.
initialValue
Optional-
Ein Wert, mit dem
accumulator
initialisiert wird, wenn das Callback zum ersten Mal aufgerufen wird. WenninitialValue
angegeben ist, beginntcallbackFn
mit dem ersten Wert im typisierten Array alscurrentValue
. WenninitialValue
nicht angegeben ist, wirdaccumulator
auf den ersten Wert im typisierten Array initialisiert undcallbackFn
beginnt mit dem zweiten Wert im typisierten Array alscurrentValue
. In diesem Fall, wenn das typisierte Array leer ist (sodass es keinen ersten Wert gibt, der alsaccumulator
zurückgegeben werden kann), wird ein Fehler ausgelöst.
Rückgabewert
Der Wert, der sich ergibt, wenn die "Reducer"-Callback-Funktion über das gesamte typisierte Array vollständig ausgeführt wird.
Ausnahmen
TypeError
-
Wird ausgelöst, wenn das typisierte Array keine Elemente enthält und
initialValue
nicht bereitgestellt wird.
Beschreibung
Siehe Array.prototype.reduce()
für weitere Details. Diese Methode ist nicht generisch und kann nur auf Instanzen eines typisierten Arrays aufgerufen werden.
Beispiele
Summe aller Werte innerhalb eines Arrays
const total = new Uint8Array([0, 1, 2, 3]).reduce((a, b) => a + b);
// total === 6
Spezifikationen
Specification |
---|
ECMAScript® 2025 Language Specification # sec-%typedarray%.prototype.reduce |
Browser-Kompatibilität
BCD tables only load in the browser