Mengumpulkan Item Tatasusunan ke dalam Objek
Anda ditugaskan untuk menukar tatasusunan objek kepada tatasusunan baharu dengan objek terkumpul, di mana nilai untuk setiap kumpulan digabungkan menjadi tatasusunan. Begini cara anda boleh mendekati masalah ini:
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]}; });
Susun atu kumpulan yang terhasil ialah:
[ {group: "one", color: ["red", "green", "black"]}, {group: "two", color: ["blue"]} ]
Pendekatan ini menggunakan kaedah tatasusunan pengurangan dan peta dengan cekap kumpulan dan ubah data.
Atas ialah kandungan terperinci Bagaimana untuk mengumpulkan Item Array ke dalam Objek dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!