JavaScript Map.groupBy()

Definición y uso

Map.groupBy() El método agrupa los elementos del objeto según el valor de cadena devuelto por la función de callback.

Map.groupBy() El método no cambia el objeto original.

Instancia

// Crear un array
const fruits = [
  {name:"apples", quantity:300},
  {name:"bananas", quantity:500},
  {name:"oranges", quantity:200},
  {name:"kiwi", quantity:150}
];
// Función de callback para agrupar elementos
function myCallback({ quantity }) {
  return quantity > 200 ? "ok" : "low";
}
// Agrupar según la cantidad
const result = Map.groupBy(fruits, myCallback);

Prueba personalmente

Atención

Los elementos en el objeto original y el objeto de retorno son los mismos.

Cualquier cambio en uno de los objetos se reflejará en el otro.

La diferencia entre Object.groupBy() y Map.groupBy()

Object.groupBy() y Map.groupBy() La diferencia radica en:

Object.groupBy() Agrupa elementos en un objeto JavaScript.

Map.groupBy() Agrupa elementos en un objeto Map.

Sintaxis

Map.groupBy(iterable, callback)

Parámetro

Parámetro Descripción
iterable Necesario. Arreglo iterable o Map.
callback

Necesario. Función que se ejecuta para cada elemento.

Esta función debe retornar el nombre del grupo de elementos.

Valor de retorno

Tipo Descripción
Object Objeto Map que contiene elementos de agrupación.

Compatibilidad del navegador

Map.groupBy() Es una característica de ES2024.

A partir de marzo de 2024, todos los navegadores modernos admiten completamente:

Chrome Edge Firefox Safari Opera
Chrome 117 Edge 117 Firefox 119 Safari 17.4 Opera 103
Septiembre de 2023 Septiembre de 2023 Octubre de 2023 Octubre de 2024 Mayo de 2023