UNPKG

@e-group/utils

Version:

eGroup team utils that share across projects.

9 lines (8 loc) 283 B
export default function groupBy(xs, key) { return xs.reduce((rv, x) => { const v = key instanceof Function ? key(x) : x[key]; // Not use copy for better performance // eslint-disable-next-line no-param-reassign (rv[v] = rv[v] || []).push(x); return rv; }, {}); }