按照给定键将对象分组在数组中
创始人
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)对象中不存在,我们创建一个空数组作为该键的值。然后,我们将当前对象添加到该分组键对应的数组中。最后,我们返回累加器对象,其中包含按照给定键分组的对象数组。

相关内容

热门资讯

据通报!wejoker内置辅助... 据通报!wejoker内置辅助,智星德州插件最新版本更新内容详解,切实确实有挂(有挂头条)1、智星德...
现有说明如下!智星德州插件,德... 现有说明如下!智星德州插件,德普之星怎么设置埋牌,一直真的有挂(有挂分享)1、首先打开德普之星怎么设...
一分钟揭秘!cloudpoke... 一分钟揭秘!cloudpoker怎么开挂,wpk俱乐部是真的吗,一直是有挂(真的有挂)1、完成辅助器...
截至目前!wepoker辅助器... 截至目前!wepoker辅助器免费,德普之星透视辅助软件是真的吗,原来是真的有挂(有挂方式)1、许多...
科技新动态!wepoker有辅... 科技新动态!wepoker有辅助器吗,wpk插件,切实真的是有挂(确实有挂)亲,关键说明,透视脚本安...
近期!wepoker私人局透视... 近期!wepoker私人局透视教程,智星德州可以透视吗,一贯存在有挂(有挂教程)1、首先打开智星德州...
交流学习经验!hhpoker免... 交流学习经验!hhpoker免费透视脚本,wepoker有没有机器人,切实存在有挂(确实有挂)破解侠...
经核实!wepoker游戏的安... 经核实!wepoker游戏的安装教程,德普之星辅助器怎么用,本来是真的有挂(有挂方法)1、该软件可以...
分享认知!hhpoker免费透... 分享认知!hhpoker免费透视脚本,wepoker有没有机器人,原来有挂(有人有挂)分享认知!hh...
据监测!德州私人局怎么透视,德... 据监测!德州私人局怎么透视,德扑之心免费透视,一直存在有挂(果真有挂)1、不需要AI权限,帮助你快速...