如何创建一个数组,该数组将按特定值对该数组中的每个对象进行分组

问题描述 投票:0回答:1

我有一个对象数组

enter image description here

是否可以在mysql中进行查询以生成由2个对象数组组成的数组,这些对象数组按group_id分组。

结果:

enter image description here

如果不是如何在 javascript 中执行此操作,组 ID 也需要是动态的。?

javascript json
1个回答
1
投票

您可以考虑使用新推出的 API

Object.groupBy

const input = [
  {
    id: 1,
    group_id: 1,
    name: "name 1 "
  },
  {
    id: 2,
    group_id: 1,
    name: "name 2 "
  },
  {
    id: 3,
    group_id: 1,
    name: "name 3 "
  },
  {
    id: 4,
    group_id: 2,
    name: "name 4 "
  },
  {
    id: 5,
    group_id: 2,
    name: "name 5 "
  },
  {
    id: 6,
    group_id: 2,
    name: "name 6 "
  }
];

const output = Object.values(Object.groupBy(input, obj => obj.group_id));

console.log(output);

© www.soinside.com 2019 - 2024. All rights reserved.