在 Javascript 中对对象数组进行分组的最有效方法
javascriptfront end technologyobject oriented programming
在 js 中对对象数组按键进行分组的最有效方法是使用 Reduce 函数。
Reduce() 方法对数组的每个元素执行 Reducer 函数(由您提供),从而产生单个输出值。
示例
const people = [ { name: 'Lee', age: 21 }, { name: 'Ajay', age: 20 }, { name: 'Jane', age: 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: [ { name: 'Ajay', age: 20 }, { name: 'Jane', age: 20 } ], 21: [ { name: 'Lee', age: 21 } ] }