JavaScript Map.groupBy()

Definizione e uso

Map.groupBy() Il metodo raggruppa gli elementi dell'oggetto in base al valore di stringa restituito dalla funzione di callback.

Map.groupBy() Il metodo non cambia l'oggetto originale.

Esempio

// Crea un array
const fruits = [
  {name:"apples", quantity:300},
  {name:"bananas", quantity:500},
  {name:"oranges", quantity:200},
  {name:"kiwi", quantity:150}
];
// Funzione di callback per l'elemento di raggruppamento
function myCallback({ quantity }) {
  return quantity > 200 ? "ok" : "low";
}
// Raggruppa per quantità
const result = Map.groupBy(fruits, myCallback);

Prova tu stesso

Attenzione

Gli elementi degli oggetti originale e restituito sono gli stessi.

Modifiche a qualsiasi oggetto si riflettono sull'altro.

La differenza tra Object.groupBy() e Map.groupBy()

Object.groupBy() e Map.groupBy() La differenza sta nel:

Object.groupBy() Raggruppa gli elementi in un oggetto JavaScript.

Map.groupBy() Raggruppa gli elementi in un oggetto Map.

Sintassi

Map.groupBy(iterable, callback)

Parametro

Parametro Descrizione
iterable Obbligatorio. Array iterabile o Map.
callback

Obbligatorio. Funzione eseguita per ogni elemento.

Questa funzione deve restituire il nome del gruppo dell'elemento.

Valore di ritorno

Tipo Descrizione
Object Oggetto Map contenente elementi di raggruppamento.

Supporto del browser

Map.groupBy() è una funzionalità di ES2024.

Dal 1° marzo 2024, tutti i browser moderni supportano completamente:

Chrome Edge Firefox Safari Opera
Chrome 117 Edge 117 Firefox 119 Safari 17.4 Opera 103
Settembre 2023 Settembre 2023 Ottobre 2023 Ottobre 2024 Maggio 2023