UNPKG

graphql

Version:

A Query Language and Runtime which can target any service.

20 lines (16 loc) 375 B
/** * Groups array items into a Map, given a function to produce grouping key. */ export function groupBy(list, keyFn) { const result = new Map(); for (const item of list) { const key = keyFn(item); const group = result.get(key); if (group === undefined) { result.set(key, [item]); } else { group.push(item); } } return result; }