首页 >web前端 >js教程 >Lodash 的 `_.groupBy` 函数如何按键高效对对象数组进行分组?

Lodash 的 `_.groupBy` 函数如何按键高效对对象数组进行分组?

Barbara Streisand
Barbara Streisand原创
2024-12-20 04:52:13410浏览

How Can Lodash's `_.groupBy` Function Efficiently Group Arrays of Objects by Key?

使用 Lodash 按键对数组中的对象进行分组:实用指南

简介

在各种编程场景中,以有组织的方式对数据进行分组通常是一项关键任务。当处理对象数组时,有必要根据特定属性对元素进行分组。 Lodash 是一个流行的 JavaScript 库,提供了一种强大的方法来实现这一目标。

Lodash 解决方案

Lodash 提供了一个名为 _.groupBy 的便捷方法,允许您对按指定键的对象数组。用法很简单:

const groupedCars = _.groupBy(cars, 'make');

这将创建一个新的对象 groupedCars,其中每个键对应于 cars 数组中 make 属性的唯一值。每个键的值是共享相同 make 值的对象数组。

实现

让我们考虑查询中提供的示例,其中我们有一个数组汽车对象并希望按品牌对它们进行分组:

const cars = [
  { make: 'audi', model: 'r8', year: '2012' },
  { make: 'audi', model: 'rs5', year: '2013' },
  { make: 'ford', model: 'mustang', year: '2012' },
  { make: 'ford', model: 'fusion', year: '2015' },
  { make: 'kia', model: 'optima', year: '2012' },
];

使用 Lodash 的 _.groupBy方法,我们可以创建所需的分组对象,如下所示:

const groupedCars = _.groupBy(cars, 'make');

生成的 groupedCars 对象将是:

{
  audi: [
    { model: 'r8', year: '2012' },
    { model: 'rs5', year: '2013' },
  ],
  ford: [
    { model: 'mustang', year: '2012' },
    { model: 'fusion', year: '2015' },
  ],
  kia: [
    { model: 'optima', year: '2012' },
  ],
}

以上是Lodash 的 `_.groupBy` 函数如何按键高效对对象数组进行分组?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn