Summe des Arrays von Objekten in JavaScript
-
Verwenden Sie die Funktion
reduce
, um die Werte eines Arrays von Objekten in JavaScript zu summieren -
Verwenden Sie die Funktionen
map()
undreduce()
, um die Werte eines Arrays von Objekten in JavaScript zu summieren
Ein Array kann ähnliche Arten von Elementen speichern, und dazu gehören auch Objekte.
In diesem Artikel lernen wir bessere und effizientere Methoden kennen, um die Werte eines Arrays von Objekten in JavaScript zu summieren.
In unseren Beispielen summieren wir den Amount
für alle Objekte im folgenden Array.
fruits = [
{description: 'orange', Amount: 50},
{description: 'orange', Amount: 50},
{description: 'apple', Amount: 75},
{description: 'kiwi', Amount: 35},
{description: 'watermelon', Amount: 25},
];
Verwenden Sie die Funktion reduce
, um die Werte eines Arrays von Objekten in JavaScript zu summieren
Wir können eine Funktion namens sum()
erstellen und die Methode reduce()
verwenden, um das Array auf einen einzigen Wert zu reduzieren, der die Summe aller Werte im Array ist.
Diese Methode hilft beim Filtern und Zuordnen des Werts gleichzeitig in einem einzigen Durchgang.
Dies implementieren wir im folgenden Code.
class fruitCollection extends Array {
sum(key) {
return this.reduce((a, b) => a + (b[key] || 0), 0);
}
}
const fruit = new fruitCollection(
...[{description: 'orange', Amount: 50},
{description: 'orange', Amount: 50},
{description: 'apple', Amount: 75},
{description: 'kiwi', Amount: 35},
{description: 'watermelon', Amount: 25},
]);
console.log(fruit.sum('Amount'));
Ausgabe:
235
Verwenden Sie die Funktionen map()
und reduce()
, um die Werte eines Arrays von Objekten in JavaScript zu summieren
Die Funktion map()
erstellt ein neues Array, indem sie den Wert jedes Elements in einem Array entsprechend ändert. Dann wird die Filterfunktion verwendet, um die Werte zu entfernen, die nicht in diese Kategorie fallen. Schließlich nimmt die Funktion reduce()
alle Werte und gibt einen einzigen Wert zurück, der die erforderliche Summe darstellt.
Beispielsweise,
fruits = [
{description: 'orange', Amount: 50},
{description: 'orange', Amount: 50},
{description: 'apple', Amount: 75},
{description: 'kiwi', Amount: 35},
{description: 'watermelon', Amount: 25},
];
const sumall =
fruits.map(item => item.amount).reduce((prev, curr) => prev + curr, 0);
console.log(sumall);
Ausgabe:
235
Verwandter Artikel - JavaScript Object
- Objekte aus einem Array in JavaScript suchen
- Holen Sie sich den Wert des Objekts durch eine Referenz auf den Schlüssel
- JavaScript-Objekt zerstören
- Objekt im Array nach Eigenschaftswert in JavaScript suchen
- Objekte in JavaScript drucken
- Sortieren Array von Objekten nach einzelnen Schlüssel mit Datum Wert