GROUPBY EN JAVASCRIPT: CÓMO AGRUPAR DATOS

En groupBy en javascript es un método que permite agrupar elementos de un array según un criterio definido por una función. Es útil para organizar datos basadas en una propiedad o condición. El método groupBy toma una función de callback que determina cómo se agruparán los elementos del array. Este método groupBy no modifica el arreglo original. Este método devuelve una clave (como una cadena o número) que identifica el grupo al que pertenece cada elemento. El resultado es un objeto donde las claves son los valores devueltos por la función de callback, y los valores son arreglos con los elementos correspondientes a cada clave.
La llamada sería :"array.groupBy(callbackFn[, thisArg])" donde:
  • callbackFn: Una función que recibe cada elemento del array, su índice y el array completo, y devuelve la clave del grupo.
  • thisArg (opcional): Objeto al que se refiere "this" dentro del "callback".
Ejemplo:

const frutas = [
  { nombre: 'manzana', tipo: 'fruta' },
  { nombre: 'zanahoria', tipo: 'verdura' },
  { nombre: 'plátano', tipo: 'fruta' },
  { nombre: 'brócoli', tipo: 'verdura' }
];

const agrupado = frutas.groupBy(item => item.tipo);

console.log(agrupado);
// Resultado:
// {
//   fruta: [
//     { nombre: 'manzana', tipo: 'fruta' },
//     { nombre: 'plátano', tipo: 'fruta' }
//   ],
//   verdura: [
//     { nombre: 'zanahoria', tipo: 'verdura' },
//     { nombre: 'brócoli', tipo: 'verdura' }
//   ]
// }