【发布时间】:2021-03-07 19:34:30
【问题描述】:
下面是我的 Json 数组:
var person = [ { name: 'Jim', color: 'blue', Office:'Microsoft', age: 22, }, { name: 'Sam', color: 'blue', Office:'Microsoft', age: 33, }, { name: 'Eddie', color: 'green', Office:'Dell', age: 77, }, ]
通过使用以下功能,我能够按功能获得单个组
var GroupByResults= person.reduce(function (r, a) {
r[a.color] = r[a.color] || [];
r[a.color].push(a);
return r;
}, Object.create(null));
我得到了以下输出
{ "blue": [ { "name": "Jim", "color": "blue", Office:'Microsoft', "age": 22 }, { "name": "Sam", "color": "blue", Office:'Microsoft', "age": 33 } ], "green": [ { "name": "Eddie", "color": "green", Office:'Dell', "age": 77 } ] }
如何实现多级分组?我想要另一个与 Office 组,所以第一个组与颜色和下一组与办公室可以任何人帮助我...
【问题讨论】:
-
您能否在开篇文章中添加所需输出的示例?
-
你试过用 a.Office 替换 a.color 吗?
标签: javascript jquery arrays json