javascript / intermediate
Snippet
Effiziente Datengruppierung mit Array.reduce
Array.reduce ist ein mächtiges Werkzeug, um ein Array in ein einzelnes Objekt oder einen Wert zu transformieren. In diesem fortgeschrittenen Muster verwenden wir ein Objekt als Akkumulator, um Daten basierend auf einer Eigenschaft zu gruppieren und zu summieren.
snippet.js
1
2
3
4
5
6
7
8
9
10
11
12
const transactions = [{ id: 1, type: 'income', amount: 100 },{ id: 2, type: 'expense', amount: 50 },{ id: 3, type: 'income', amount: 200 }];const summary = transactions.reduce((acc, current) => {acc[current.type] = (acc[current.type] || 0) + current.amount;return acc;}, {});console.log(summary); // { income: 300, expense: 50 }
nextjs
Erklärung
1
acc[current.type] = (acc[current.type] || 0) + current.amount;
Initialisiert die Eigenschaft mit 0, falls sie nicht existiert, und addiert dann den aktuellen Betrag.
2
}, {});
Gibt ein leeres Objekt als Initialwert für den Akkumulator an.