Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

วิธีที่มีประสิทธิภาพที่สุดในการจัดกลุ่มตามอาร์เรย์ของวัตถุใน Javascript


วิธีที่มีประสิทธิภาพที่สุดในการจัดกลุ่มตามคีย์บนอาร์เรย์ของวัตถุใน js คือการใช้ฟังก์ชันลด

วิธีลด () เรียกใช้ฟังก์ชันตัวลด (ที่คุณระบุ) ในแต่ละองค์ประกอบของอาร์เรย์ ส่งผลให้มีค่าเอาต์พุตเดียว

ตัวอย่าง

const people =[ { ชื่อ:'Lee', อายุ:21 }, { ชื่อ:'Ajay', อายุ:20 }, { ชื่อ:'Jane', อายุ:20 }];function groupBy(objectArray, property ) { return objectArray.reduce ((acc, obj) => { const key =obj[property]; if (!acc[key]) { acc[key] =[]; } // เพิ่มวัตถุในรายการสำหรับคีย์ที่กำหนด ค่า acc[key].push(obj); return acc; }, {});}const groupedPeople =groupBy(people, 'age');console.log(groupedPeople);

ผลลัพธ์

สิ่งนี้จะให้ผลลัพธ์ -

{ 20:[ { ชื่อ:'Ajay' อายุ:20 } { ชื่อ:'Jane' อายุ:20 } ], 21:[ { ชื่อ:'Lee' อายุ:21 } ] }