JavaScript Map.groupBy()

Määritelmä ja käyttö

Map.groupBy() Metodi ryhmittelee objektin elementit paluufunktiosta saadun merkkijonon arvon perusteella.

Map.groupBy() Metodi ei muuta alkuperäistä objektia.

Esimerkki

// Luo taulukko
const fruits = [
  {name:"apples", quantity:300},
  {name:"bananas", quantity:500},
  {name:"oranges", quantity:200},
  {name:"kiwi", quantity:150}
];
// Käyttää ryhmitettyjen elementtien paluufunktiota
function myCallback({ quantity }) {
  return quantity > 200 ? "ok" : "low";
}
// Ryhmittele mukaan määrään
const result = Map.groupBy(fruits, myCallback);

Kokeile itse

Huomaa

Alkuperäisessä objektissa ja palautetussa objektissa olevat elementit ovat samat.

Mikä tahansa muutos yhdessä objektissa heijastuu toiseen.

Object.groupBy() ja Map.groupBy() ero

Object.groupBy() ja Map.groupBy() Ero on:

Object.groupBy() Ryhmittele elementit JavaScript-objektiin.

Map.groupBy() Ryhmittele elementit Map-objektiin.

Syntaksi

Map.groupBy(iterable, callback)

Parametri

Parametri Kuvaus
iterable Välttämätön. Iteroitu taulukko tai Map.
callback

Välttämätön. Funktio, joka suoritetaan jokaiselle elementille.

Tämä funktio tulisi palauttaa elementin ryhmän nimi.

Palautusarvo

Tyyppi Kuvaus
Object Sisältää ryhmitettyjä elementtejä oleva Map-objekti.

Selaimen tuki

Map.groupBy() Se on ES2024 ominaisuus.

Aloitetaan vuodesta 2024 ja maaliskuusta, kaikki modernit selaimet tukevat täysin:

Chrome Edge Firefox Safari Opera
Chrome 117 Edge 117 Firefox 119 Safari 17.4 Opera 103
2023 vuoden syyskuu 2023 vuoden syyskuu 2023 vuoden lokakuu 2024 vuoden lokakuu 2023 vuoden toukokuu