Ten samouczek pokaże metody grupowania obiektów JavaScript w tablicy.
Jak pogrupować tablicę obiektów w JavaScript?
Aby pogrupować tablicę obiektów w JavaScript, użyj następujących metod:
Zrozumiemy działanie tych metod jeden po drugim.
Metoda 1: Grupa tablica obiektów za pomocą metody redukuj ()
Najczęściej stosowaną metodą grupowania tablicy obiektów jest „zmniejszyć()" metoda. Jest wywoływany z funkcją odwołania. Zmniejsza tablicę obiektów zgrupowanych według określonego typu. Metoda redukująca () jest potężna, ale nieco skomplikowana do zrozumienia.
Składnia
Użyj następującej składni do metody redukuj (), aby zgrupować tablicę obiektów:
zmniejszyć (poprzednia wartość, wartość current)Wartość zwracana
Zwraca sumę wszystkich zgrupowanych elementów w tablicy.
Przykład
Utwórz szereg obiektów „szyk„Z nieruchomościami, nazwami i kategoriami:
const array = [Zadzwoń do "zmniejszyć()„Metoda z funkcją strzałki z tyłu wywołania, która zgrupuje obiekty na podstawie klucza„ kategorii ”i przechowuje je w zmiennej”GroupArrayObject”:
const grouparrayObject = tablica.redukuj ((grupa, arr) =>Wydrukuj wynikową tablicę na konsoli za pomocą „konsola.dziennik()" metoda:
konsola.log (GroupArrayObject);Wyjście
Z powyższego wyjścia, wynikowa tablica ma dwie zminimalizowane tablice „Zabarwienie" I "Owoce". Po prostu kliknij głowę tablicy obok zminimalizowanej nazwy tablicy, aby ją rozwinąć:
Teraz wyjście pokazuje dwa obiekty „Zabarwienie" I "Owoce,”, Które zawierają odpowiednio 2 i 4 tablice.
Metoda 2: Grupa tablica obiektów za pomocą metody GroupBy ()
Inną metodą grupowania szeregu obiektów jest „Grupuj według()" metoda. Metoda GroupBy () zostanie zastosowana w projekcie NPM z „Lodash" biblioteka. Jest prostszy do zrozumienia i wymaga mniej wierszy kodu.
Składnia
Postępuj zgodnie z poniższą składnią do metody GroupBy (), aby zgrupować tablicę obiektów w JavaScript:
_.grupa (lista, klucz)W powyższej składni,
Wartość zwracana
Zwraca wiele kolekcji pogrupowanych według danego klucza.
Przykład
Użyj następujących poleceń, aby uwzględnić bibliotekę Lodash w swoim projekcie NPM:
$ npm i -g npmNastępnie dodaj bibliotekę Lodash w pliku JavaScript z następującym wierszem:
var _ = wymaga („lodash”);Następnie po prostu użyj następujących wierszy kodu:
const array = [W tym kodowym fragmencie:
Uruchom powyższy kod, a wyjście będzie:
Można łatwo zaobserwować, że obiekty zostały teraz pogrupowane na podstawie wartości klucza „kategorii”.
Wniosek
Do grupowania, szeregu obiektów w JavaScript, użyj „zmniejszyć()”Metoda lub„Grupuj według()" metoda. Metoda redukująca () jest najczęściej stosowaną metodą grupowania tablicy obiektów, podczas gdy metoda GroupBy () wymaga mniej kodu i jest łatwiejsza do zrozumienia, ale będzie wykonywana w projekcie NPM w bibliotece Lodash Biblioteka. Ten samouczek pokazał metody grupowania obiektów JavaScript w tablicy.