JavaScript Map.groupBy()

Definicja i użycie

Map.groupBy() Metoda grupuje elementy obiektu na podstawie wartości string zwróconej przez funkcję zwrotną.

Map.groupBy() Metoda nie zmienia oryginalnego obiektu.

Instancja

// Tworzenie tablicy
const fruits = [
  {name:"apples", quantity:300},
  {name:"bananas", quantity:500},
  {name:"oranges", quantity:200},
  {name:"kiwi", quantity:150}
];
// Funkcja zwrotna do grupowania elementów
function myCallback({ quantity }) {
  return quantity > 200 ? "ok" : "low";
}
// Grupowanie według liczby
const result = Map.groupBy(fruits, myCallback);

Spróbuj sam

Uwaga

Elementy w oryginalnym obiekcie i zwracanym obiekcie są takie same.

Zmiany w jednym obiekcie będą odzwierciedlały się w drugim.

Różnica między Object.groupBy() a Map.groupBy()

Object.groupBy() i Map.groupBy() Różnica polega na:

Object.groupBy() Grupuje elementy do obiektu JavaScript.

Map.groupBy() Grupuje elementy do obiektu Map.

Gramatyka

Map.groupBy(iterable, callback)

Parametr

Parametr Opis
iterable Wymagane. Przetwarzalna tablica lub Mapa.
callback

Wymagane. Funkcja wykonywana dla każdego elementu.

Funkcja ta powinna zwrócić nazwę grupy elementu.

Zwracana wartość

Typ Opis
Object Zawiera obiekt Map zawierający elementy grupy.

Wspieranie przeglądarki

Map.groupBy() jest cechą ES2024.

Od marca 2024 roku wszystkie nowoczesne przeglądarki w pełni wspierają:

Chrome Edge Firefox Safari Opera
Chrome 117 Edge 117 Firefox 119 Safari 17.4 Opera 103
Wrzesień 2023 roku Wrzesień 2023 roku Październik 2023 roku Październik 2024 roku Maj 2023 roku