mirror of
https://github.com/fmhy/edit.git
synced 2026-01-20 02:41:43 +11:00
9 lines
245 B
TypeScript
9 lines
245 B
TypeScript
export function groupBy<T, K extends keyof any>(arr: T[], key: (i: T) => K): Record<K, T[]> {
|
|
return arr.reduce(
|
|
(groups, item) => {
|
|
(groups[key(item)] ||= []).push(item);
|
|
return groups;
|
|
},
|
|
{} as Record<K, T[]>,
|
|
);
|
|
}
|