js数组对象分组

1.简单数据
要将JavaScript数组对象分组,您可以使用Array.reduce()和Object.values()方法的组合。

以下是一个示例代码,其中将数组中的对象按照其中一个属性进行分组,并返回一个对象,其中键是分组值,值是具有该分组值的对象数组。

const array = [
  { name: 'Alice', group: 'A' },
  { name: 'Bob', group: 'B' },
  { name: 'Charlie', group: 'A' },
  { name: 'Dave', group: 'C' },
  { name: 'Eve', group: 'B' },
  { name: 'Frank', group: 'A' },
];

const grouped = array.reduce((acc, obj) => {
  const key = obj.group;
  if (!acc[key]) {
    acc[key] = [];
  }
  acc[key].push(obj);
  return acc;
}, {});

console.log(grouped); // { A: [{name: 'Alice', group: 'A'}, {name: 'Charlie', group: 'A'}, {name: 'Frank', group: 'A'}], B: [{name: 'Bob', group: 'B'}, {name: 'Eve', group: 'B'}], C: [{name: 'Dave', group: 'C'}] }

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Array 对象方法 一、 Array.map() 数组中的每项数据都添加一个方法,结果作为一个新的数组返回,并不...
    小碗吃不了阅读 381评论 0 0
  • all 函数封装了every函数,判断条件默认为元素默认转为boolean值,如果都为true,则返回true。否...
    oWSQo阅读 417评论 0 1
  • 前言 在开发中,数组的使用场景非常多,平日中也涉及到很多数组的api/相关操作,一直也没有对这块内容进行一块整理总...
    为光pig阅读 640评论 0 9
  • 每日一题 以下哪个会打印出"3"?3.toString() //报错 Uncaught SyntaxError...
    咸小七阅读 395评论 0 0
  • 数组是什么? 数组是一种储存多个值的数据类型数组是由方括号包裹的多个值。其中每个值称为数组元素。数组是一种由简单数...
    天天涯阅读 308评论 0 1