const people = [{ name: 'Rick', age: 30, sex: 'man' },{ name: 'Lucy', age: 24, sex: 'woman' },{ name: 'Lily', age: 40, sex: 'woman' },]
const groupBy = (datas, fn) =>datas.reduce((last, data) =>({ ...last, [`${fn(data)}`]: (last[fn(data)] || []).concat(data) }), {})console.log('groupBy', groupBy(people, p => p.sex))
1: 在项目中,我可们可能会用到图表工具,例如G2;
我们在绘制图表的时候需要一个维度[比如 时间],但是我们后台小哥哥返回的数据并不是我们可以直接使用的那种,所以我们这里需要自己给数据去分组
2、代码分享
看上面代码
如果看的不是很懂得,可以看下reduce函数的用法
