Mengumpulkan Item Tatasusunan Menggunakan Objek
Apabila berurusan dengan tatasusunan yang mengandungi objek, ia boleh berguna untuk mengumpulkan item berdasarkan harta bersama. Ini boleh dicapai dengan membuat pemetaan nama kumpulan kepada nilai yang berkaitan.
Andaikan anda mempunyai tatasusunan seperti berikut:
myArray = [ {group: "one", color: "red"}, {group: "two", color: "blue"}, {group: "one", color: "green"}, {group: "one", color: "black"} ]
Anda ingin menukarnya kepada tatasusunan baharu dengan item dikumpulkan mengikut sifat "kumpulan":
myArray = [ {group: "one", color: ["red", "green", "black"]}, {group: "two", color: ["blue"]} ]
Untuk mencapai ini, anda boleh menggunakan yang berikut langkah:
Berikut ialah contoh JavaScript pelaksanaan:
var myArray = [ {group: "one", color: "red"}, {group: "two", color: "blue"}, {group: "one", color: "green"}, {group: "one", color: "black"} ]; var group_to_values = myArray.reduce(function (obj, item) { obj[item.group] = obj[item.group] || []; obj[item.group].push(item.color); return obj; }, {}); var groups = Object.keys(group_to_values).map(function (key) { return {group: key, color: group_to_values[key]}; });
Setelah dilaksanakan, kod ini akan menghasilkan tatasusunan berkumpulan yang dikehendaki:
groups: { "one": [ "red", "green", "black" ], "two": [ "blue" ] }
Atas ialah kandungan terperinci Bagaimana untuk Menghimpunkan Item Susunan mengikut Harta Bersama dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!