Array-Elemente in Objekte gruppieren
Sie haben die Aufgabe, ein Array von Objekten in ein neues Array mit gruppierten Objekten umzuwandeln, in denen die Werte enthalten sind für jede Gruppe werden in einem Array zusammengefasst. So können Sie dieses Problem angehen:
var myArray = [ {group: "one", color: "red"}, {group: "two", color: "blue"}, {group: "one", color: "green"}, {group: "one", color: "black"} ];
// Create a mapping of group names to arrays of values var group_to_values = myArray.reduce(function (obj, item) { obj[item.group] = obj[item.group] || []; obj[item.group].push(item.color); return obj; }, {});
// Convert the mapping to an array of grouped objects var groups = Object.keys(group_to_values).map(function (key) { return {group: key, color: group_to_values[key]}; });
Das resultierende Gruppen-Array sieht wie folgt aus:
[ {group: "one", color: ["red", "green", "black"]}, {group: "two", color: ["blue"]} ]
Dieser Ansatz nutzt die Methoden zum Reduzieren und Zuordnen von Arrays effizient Gruppieren und transformieren Sie die Daten.
Das obige ist der detaillierte Inhalt vonWie gruppiere ich Array-Elemente in Objekten in JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!