Wenn Sie ein komplexes Objekt mit vielen Daten haben, z. B. ein Array von Objekten, können Sie schrittweise vorgehen, um dieses Problem zu lösen.
z.B:
const myArray = [{ id: 1, value: 10}, { id: 2, value: 20}];
Zuerst sollten Sie Ihr Array in ein neues Array Ihres Interesses mappen, in diesem Beispiel könnte es ein neues Array von Werten sein.
const values = myArray.map(obj => obj.value);
Diese Callback-Funktion gibt ein neues Array zurück, das nur Werte aus dem ursprünglichen Array enthält, und speichert es in values const. Jetzt ist Ihr values const ein Array wie dieses:
values = [10, 20];
Und nun können Sie Ihre Reduktion durchführen:
const sum = values.reduce((accumulator, currentValue) => { return accumulator + currentValue; } , 0);
Wie Sie sehen können, führt die reduce-Methode die Callback-Funktion mehrfach aus. Dabei wird jedes Mal der aktuelle Wert des Elements im Array genommen und mit dem Akkumulator summiert. Um die Summe richtig zu bilden, müssen Sie den Anfangswert des Akkumulators als zweites Argument der reduce-Methode festlegen.
Jetzt haben Sie Ihre neue Konstsumme mit dem Wert von 30.