@tc39-proposal/group-by
Version:
TC39 proposal: Implementation of Object.groupBy and Map.groupBy
2 lines (1 loc) • 315 B
JavaScript
function n(n,e){return n.reduce(((n,r,t)=>{const u=e(r,t);return n.has(u)?n.get(u).push(r):n.set(u,[r]),n}),new Map)}function e(n,e){return n.reduce(((n,r,t)=>{const u=e(r,t);return n[u]?n[u].push(r):n[u]=[r],n}),{})}function r(r,t,u){return u?n(r,t):e(r,t)}export{r as groupBy,n as groupByMap,e as groupByObject};