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

相关内容

热门资讯

新手必备(德州扑克辅助器)辅助... 新手必备(德州扑克辅助器)辅助透视(透视)其实是真的有挂(有挂规律)-哔哩哔哩是一款可以让一直输的玩...
2024教程!扑克世界app辅... 2024教程!扑克世界app辅助,gg扑克发牌机制测试,的确真的有挂(有挂总结)-哔哩哔哩是一款可以...
一分钟了解!红龙扑克是真是假(... 1、一分钟了解!红龙扑克是真是假(辅助挂)其实是真的有挂(详细教程)(有挂教程)-哔哩哔哩;该软件可...
实测揭晓(德扑ai助手)软件透... 实测揭晓(德扑ai助手)软件透明挂(辅助挂)原来是真的有挂(有挂攻略)-哔哩哔哩关于德扑ai助手机制...
发现玩家!约局吧是正规的(透视... 《发现玩家!约局吧是正规的(透视)的确是真的有挂(详细教程)(有挂攻略)-哔哩哔哩》 约局吧是正规的...
推荐几款新版(聚星扑克有假)透... 推荐几款新版(聚星扑克有假)透视辅助(透视)确实真的有挂(有挂教程)-哔哩哔哩;(需添加指定薇757...
透明黑科技!德扑之星好牌,德州... 透明黑科技!德扑之星好牌,德州辅助神器wpk,的确是真的有挂(有挂总结)-哔哩哔哩;超受欢迎的德州辅...
透视免费(pokerist有挂... 透视免费(pokerist有挂)透视辅助(透视)其实是真的有挂(有挂技巧)-哔哩哔哩;pokeris...
科普!GG扑克辅助软件(透视)... 科普!GG扑克辅助软件(透视)的确是真的有挂(详细教程)(有挂详情)-哔哩哔哩;人气非常高,ai更新...
我来教大家!德州nzt实战(辅... 1、我来教大家!德州nzt实战(辅助挂)原来是真的有挂(详细教程)(有挂详情)-哔哩哔哩。2、德州n...