Summe des Arrays von Objekten in JavaScript

Shivam Arora 12 Oktober 2023
  1. Verwenden Sie die Funktion reduce, um die Werte eines Arrays von Objekten in JavaScript zu summieren
  2. Verwenden Sie die Funktionen map() und reduce(), um die Werte eines Arrays von Objekten in JavaScript zu summieren
Summe des Arrays von Objekten in JavaScript

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