JavaScript数组分组groupBy
2023-12-17 16:45:31
JavaScript 最近发布了一个方法 Object.groupBy,可以对可迭代对象中的元素进行分组。
语法:
Object.groupBy(items, callbackFn)
items
被分组的可迭代对象,如 Array。
callbackFn
对可迭代对象中的每个元素执行的函数。
举个例子,我们想要根据城市的首字符进行分组:
const cityList = [
{ id: 1, name: "beijing" },
{ id: 2, name: "shanghai" },
{ id: 3, name: "guangzhou" },
{ id: 4, name: "shenzhen" },
{ id: 5, name: "hangzhou" },
{ id: 6, name: "chengdu" },
{ id: 7, name: "wuhan" },
{ id: 8, name: "xian" },
{ id: 9, name: "chongqing" },
];
const result = Object.groupBy(cityList, (city) => city.name[0]);
返回结果:
{
"b": [
{
"id": 1,
"name": "beijing"
}
],
"s": [
{
"id": 2,
"name": "shanghai"
},
{
"id": 4,
"name": "shenzhen"
}
],
"g": [
{
"id": 3,
"name": "guangzhou"
}
],
"h": [
{
"id": 5,
"name": "hangzhou"
}
],
"c": [
{
"id": 6,
"name": "chengdu"
},
{
"id": 9,
"name": "chongqing"
}
],
"w": [
{
"id": 7,
"name": "wuhan"
}
],
"x": [
{
"id": 8,
"name": "xian"
}
]
}
文章来源:https://blog.csdn.net/qq_44600038/article/details/135045821
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!