frostqui Lo que no me queda claro es cómo sería para más de dos grupos.
Cito el ejemplo del README,
// groupBy groups items by arbitrary key.
Sospecho que si dicen arbitrary
es que acepta N grupos. En Ruby existe un método parecido llamado group_by
en el stdlib que se ve similar y que acepta múltiples grupos. Si JavaScript lo plantease igual que Ruby, haría las particiones en función de la key pero debería ser posible devolver más keys. Es solo que en este ejemplo han usado dos. Por traducir a JS el ejemplo del rubydoc, debería ser algo como
const array = [1, 2, 3, 4, 5, 6];
array.groupBy(i => {
return i % 3;
});
// => { 0: [3, 6], 1: [1, 4], 2: [2, 5] }
(Admitamos la idea de que keys numéricas en los objects JS es un poco trastorno, pero sería un ejemplo.)