按照给定键将对象分组在数组中
创始人
2024-08-24 02:00:29
0

你可以使用reduce()方法来按照给定键将对象分组在数组中。下面是一个示例代码:

function groupBy(arr, key) {
  return arr.reduce((acc, obj) => {
    const groupKey = obj[key];
    if (!acc[groupKey]) {
      acc[groupKey] = [];
    }
    acc[groupKey].push(obj);
    return acc;
  }, {});
}

// 示例用法
const persons = [
  { name: 'John', age: 20, gender: 'male' },
  { name: 'Jane', age: 25, gender: 'female' },
  { name: 'Mike', age: 30, gender: 'male' },
  { name: 'Emily', age: 22, gender: 'female' },
];

const groupedPersons = groupBy(persons, 'gender');
console.log(groupedPersons);

运行以上代码将输出以下结果:

{
  male: [
    { name: 'John', age: 20, gender: 'male' },
    { name: 'Mike', age: 30, gender: 'male' }
  ],
  female: [
    { name: 'Jane', age: 25, gender: 'female' },
    { name: 'Emily', age: 22, gender: 'female' }
  ]
}

在上述示例中,我们使用reduce()方法来遍历数组。对于每个对象,我们获取给定键的值作为分组键(groupKey)。如果该分组键在累加器(acc)对象中不存在,我们创建一个空数组作为该键的值。然后,我们将当前对象添加到该分组键对应的数组中。最后,我们返回累加器对象,其中包含按照给定键分组的对象数组。

相关内容

热门资讯

十分钟绝活儿!约战竞技场辅助器... 十分钟绝活儿!约战竞技场辅助器(外挂)竟然有辅助软件(哔哩哔哩)十分钟绝活儿!约战竞技场辅助器(外挂...
第九分钟烘培!凑一桌开挂游戏辅... 第九分钟烘培!凑一桌开挂游戏辅助(外挂)其实是有辅助软件(哔哩哔哩)该软件可以轻松地帮助玩家将凑一桌...
七分钟办法!新海贝之城脚本(外... 七分钟办法!新海贝之城脚本(外挂)总是是真的有辅助技巧(哔哩哔哩)1.新海贝之城脚本 选牌创建新账号...
4分钟指引!杭麻圈辅助工具(外... 4分钟指引!杭麻圈辅助工具(外挂)其实是真的有辅助方法(哔哩哔哩)1、全新机制【杭麻圈辅助工具ai辅...
第5分钟演示!浙江茶园辅助(外... 第5分钟演示!浙江茶园辅助(外挂)都是是真的有辅助app(哔哩哔哩)1、游戏颠覆性的策略玩法,独创攻...
三分钟举措!上饶中至能操控吗(... 三分钟举措!上饶中至能操控吗(外挂)好像一直都是有辅助软件(哔哩哔哩)1、让任何用户在无需上饶中至能...
两分钟法子!新天道能不能开挂(... 两分钟法子!新天道能不能开挂(外挂)总是是有辅助教程(哔哩哔哩)1、让任何用户在无需新天道能不能开挂...
三分钟要领!玖玖互娱辅助工具(... 三分钟要领!玖玖互娱辅助工具(外挂)真是存在有辅助脚本(哔哩哔哩)三分钟要领!玖玖互娱辅助工具(外挂...
8分钟手段!wepoker私人... 8分钟手段!wepoker私人局辅助器(外挂)确实有辅助技巧(哔哩哔哩)运wepoker私人局辅助器...
2分钟步骤!科乐游戏辅助脚本视... 2分钟步骤!科乐游戏辅助脚本视频(外挂)原来是真的有辅助插件(哔哩哔哩)1、任何科乐游戏辅助脚本视频...