Files
30-seconds-of-code/test/groupBy/groupBy.js
2018-01-17 13:40:40 -05:00

6 lines
200 B
JavaScript

const groupBy = (arr, fn) =>
arr.map(typeof fn === 'function' ? fn : val => val[fn]).reduce((acc, val, i) => {
acc[val] = (acc[val] || []).concat(arr[i]);
return acc;
}, {});
module.exports = groupBy