Jak filtrować obiekty w JavaScript?

Jak filtrować obiekty w JavaScript?
Podczas programowania w JavaScript, często chcemy usunąć powtarzane lub nieprawidłowe wartości zawarte w obiekcie lub usunąć obiekty trzymające określone wartości. W takich przypadkach filtrowanie obiektów w JavaScript może pomóc w zmniejszeniu złożoności i usunięciu dodatkowych wpisów, aby kod był czytelny i zrozumiały.

Ten blog pokaże metody filtrowania obiektów w JavaScript.

Jak filtrować obiekt w JavaScript?

Obiekt można filtrować w JavaScript, stosując „filtr()" metoda:

  • Z "szukaj()" metoda
  • NA "Object Wartości logiczne"
  • Na podstawie "stan"

Sprawdźmy każdy z wymienionych scenariuszy jeden po drugim!

Metoda 1: Filtr obiekt w JavaScript, stosując metody Filter () i Search ()

„„filtr()„Metoda tworzy nowy zestaw elementów zgodnie z zastosowanym warunkiem. Natomiast "szukaj()”Metoda przeszukuje określony ciąg w tablicy. Te metody można wykorzystać do wyszukiwania określonej wartości obiektu i filtrowania.

szyk.filtr (funkcja (bieżące, indeks, arr), this)

W podanej składni „„funkcjonować”Odnosi się do funkcji, którą należy wykonać dla każdego elementu tablicy, a wartości argumentu funkcji odnoszą się do„indeks”Bieżącego elementu w tablicy i„Ten”To wartość przekazana do funkcji.

strunowy.Wyszukaj (wartość)

W powyższej składni metoda wyszukiwania () przeszukuje „wartość”W danym ciągu.

Przykład
Po pierwsze, zadeklaruj szereg obiektów za pomocą „nazwa”Właściwości i odpowiednie wartości:

Niech objdata = [nazwa: „rock”, id: „1”, żywy: true,
Nazwa: „John”, id: „2”, żywy: true,
Nazwa: „David”, id: „3”, żywy: false]

Następnie zastosuj metodę Filter () na wartość „żywy„Własność w taki sposób, że obiekt o wartości boolowskiej określonej właściwości jako„FAŁSZ”Zostanie odfiltrowane z tablicy:

Niech objdata = [name: „Harry”, nazwa: „David”, nazwa: „Alisa”]

Następnie „filtr()„Metoda zostanie zastosowana o wartości”przedmiot„Jako jego argument, który zostanie przekazany do tablicy dostępnych obiektów w taki sposób, że„szukaj()„Metoda poszukiwania określonej wartości obiektu„Złupić”I odfiltruj go za pomocą poprzedniej metody:

niech Filterobj = objdata.Filtr ((item) => pozycja.nazwa.Wyszukaj („Harry”))

Wreszcie, filtrowane obiekty będą wyświetlane na konsoli:

konsola.Log („Filtrowane obiekty to:”, Filterobj)

Odpowiednie wyjście będzie następujące:

Można zauważyć, że określona wartość jest filtrowana z podanej tablicy obiektów.

Metoda 2: Obiekt filtrujący w JavaScript poprzez zastosowanie metody Filter () na podstawie wartości logicznych obiektu

„„filtr()„Metoda można podobnie wykorzystać w tej metodzie do filtrowania obiektów poprzez dostęp do ich właściwości określonych i filtrowanie na podstawie odpowiednich wartości logicznych dodanych właściwości.

Przykład
W poniższym przykładzie podobnie zadeklarujemy tablicę obiektów zawierających właściwości typu łańcucha, numeryczne i logiczne oraz ich odpowiednie wartości:

Niech objdata = [nazwa: „rock”, id: „1”, żywy: true,
Nazwa: „John”, id: „2”, żywy: true,
Nazwa: „David”, id: „3”, żywy: false]

Następnie zastosuj metodę Filter () na wartość właściwości „żywy” w taki sposób, aby obiekt posiadający wartość logiczną określonej właściwości jako „fałsz” zostanie odfiltrowana z tablicy:

const filterobj = objdata.Filtr ((item) => pozycja.żywy);

W rezultacie filtrowane obiekty o wartości logicznej „PRAWDA”Zostanie zalogowany na konsoli:

konsola.log („Filtrowane obiekty to:”, Filterobj);

Wyjście

Metoda 3: Obiekt filtra w JavaScript poprzez zastosowanie metody Filter () na podstawie warunku

W tej konkretnej metodzie wykorzystamy „filtr()”Metoda filtrowania określonej właściwości obiektu na podstawie dodanego warunku w jego argumencie.

Spójrz na poniższy przykład demonstracji.

Przykład
Najpierw zadeklaruj szereg obiektów w następujący sposób:

Niech objdata = [nazwa: „rock”, id: „1”, żywy: true,
Nazwa: „John”, id: „2”, żywy: false,
Nazwa: „David”, id: „3”, żywy: false]

Następnie zastosuj „filtr()„Metoda właściwości„ id ”objdata w taki sposób, że obiekty posiadające identyfikator mniej niż trzy będą przechowywane w„Filterobj”A pozostałe stanie się przestarzałe:

niech Filterobj = objdata.Filtr ((item) => pozycja.ID < 3);

Na koniec zaloguj filtrowane obiekty spełniające powyższy warunek na konsoli:

konsola.log („Filtrowane obiekty to:”, Filterobj);

W danym wyjściu można zaobserwować, że obiekty są filtrowane na podstawie wartości „ID”Niezależnie od przypisanych wartości logicznych.

Omówiliśmy różne metody filtrowania obiektów w JavaScript.

Wniosek

Aby filtrować obiekty w JavaScript, zastosuj „filtr()" I "szukaj()”Metody w połączeniu w celu wyszukiwania wartości obiektu i filtrowania go. Ponadto tylko filtr () można wykorzystać do odfiltrowania właściwości obiektu na podstawie dodanych warunków. Ten zapis wyjaśnił trzy metody filtrowania obiektów w JavaScript.