Aprende Lodash: _.groupBy, agrupa elementos en un arreglo u objeto por un valor dado
Desafío: escribe tu propia versión de groupBy llamada myGroupBy usando JavaScript puro que haga lo mismo que la versión de lodash.
La función auxiliar de lodash, groupBy, recibe un arreglo y agrupa sus elementos en un objeto de acuerdo con un criterio dado. Un ejemplo de la vida real sería que, si tuvieras un estacionamiento lleno de autos, podrías agruparlos por color. Luego colocarías los rojos en un lugar y los azules en otro. El arreglo representa el estacionamiento y el objeto representa las posiciones donde colocaste los autos.
Argumentos
- collection (Array or Object): La colección que se debe recorrer.
- [iteratee=_.identity] (Function or String or Object): La función iteratee que transforma las claves.
Devuelve
- (Object): Devuelve el objeto agregado resultante.
Ejemplos
groupBy(["one", "two", "three"], "length"); returns { "3": ["one", "two"], "5": ["three"] }Notas
Donde lodash destaca es en su versatilidad. Esta función puede recibir un string, un objeto o una función y devolver un resultado. Esto dificulta escribir nuestra versión en JavaScript puro, ya que debemos tener en cuenta tantos tipos de entradas diferentes.