Hvordan filtrere objekter i JavaScript?

Hvordan filtrere objekter i JavaScript?
Mens vi programmerer i JavaScript, ønsker vi ofte å fjerne de gjentatte eller ugyldige verdiene som finnes i et objekt eller slette objektene som holder visse verdier. I slike tilfeller kan filtrere objektene i JavaScript bidra til å redusere kompleksiteten og slette de ekstra oppføringene for å gjøre koden lesbar og forståelig.

Denne bloggen vil demonstrere metodene for å filtrere objekter i JavaScript.

Hvordan filtrere objekt i JavaScript?

Et objekt kan filtreres i JavaScript ved å bruke "filter()”Metode:

  • Med “Søk()”Metode
  • På "Objekt boolske verdier
  • Basert på "betingelse

La oss sjekke ut hvert av de nevnte scenariene en etter en!

Metode 1: Filterobjekt i JavaScript ved å bruke filter () og søk () metoder

filter()”Metode skaper en ny rekke elementer i henhold til den anvendte tilstanden. Mens “Søk()”Metodesøk i den spesifiserte strengen i en matrise. Disse metodene kan brukes til å søke etter en bestemt objektverdi og filtrere den.

Array.Filter (funksjon (strøm, indeks, ARR), dette)

I den gitte syntaksen, "funksjon”Henviser til funksjonen som må utføres for hvert array -element, og argumentverdiene til funksjonen refererer til“indeks”Av det nåværende elementet i en matrise og“dette”Er verdien som er gitt til funksjonen.

streng.Søk (verdi)

I syntaks ovenfor søker Search () -metoden etter “verdi”I den gitte strengen.

Eksempel
For det første, erklære en rekke objekter med "Navn”Egenskaper og tilsvarende verdier:

La objData = [navn: "rock", id: "1", i live: true,
Navn: "John", Id: "2", Alive: True,
Navn: "David", Id: "3", Alive: False]

Etter det, bruk filter () -metoden på verdien av “i live”Eiendom på en slik måte at objektet har den spesifiserte eiendoms boolske verdi som“falsk”Vil bli filtrert ut fra matrisen:

La objData = [navn: "Harry", navn: "David", navn: "Alisa"]

Neste, “filter()”Metoden vil bli brukt med verdien”punkt”Som argument som vil bli gitt til de tilgjengelige objektene på en slik måte at“Søk()”Metoden vil søke etter den spesifikke objektverdien”Harry”Og filtrer den ut ved hjelp av den tidligere metoden:

La filterobj = objdata.filter ((element) => elementet.Navn.Søk ("Harry"))

Til slutt vises de filtrerte objektene på konsollen:

konsoll.Logg ("De filtrerte objektene er:", Filterobj)

Den tilsvarende utgangen vil være som følger:

Det kan sees at den spesifiserte verdien blir filtrert ut fra det gitte utvalget av objekter.

Metode 2: Filterobjekt i JavaScript ved å bruke filter () -metode basert på objektets boolske verdier

filter()”Metode kan på samme måte brukes på denne metoden for å filtrere objektene ved å få tilgang til deres spesifikke egenskaper og filtrere dem basert på de tilsvarende boolske verdiene til de ekstra egenskapene.

Eksempel
I det følgende eksemplet vil vi på samme måte erklære en rekke objekter som holder en streng, numerisk og boolske egenskaper og deres tilsvarende verdier:

La objData = [navn: "rock", id: "1", i live: true,
Navn: "John", Id: "2", Alive: True,
Navn: "David", Id: "3", Alive: False]

Etter det, bruk filteret () -metoden på verdien av egenskapen "levende" på en slik måte at objektet som har den spesifiserte eiendommens boolske verdi som "falsk" vil bli filtrert ut fra matrisen:

const filterobj = objdata.filter ((element) => elementet.i live);

Som et resultat, de filtrerte objektene som har den boolske verdien “ekte”Vil bli logget på konsollen:

konsoll.logg ("De filtrerte objektene er:", filterobj);

Produksjon

Metode 3: Filterobjekt i JavaScript ved å bruke filter () -metode basert på tilstand

I denne spesielle metoden vil vi bruke "filter()”Metode for å filtrere ut en bestemt objektegenskap basert på den ekstra tilstanden i argumentet.

Se på følgende eksempel for demonstrasjon.

Eksempel
Først må du erklære en rekke objekter som følger:

La objData = [navn: "rock", id: "1", i live: true,
Navn: "John", id: "2", i live: falsk,
Navn: "David", Id: "3", Alive: False]

Neste, bruk "filter()”Metode på" ID "-egenskapen til objdata på en slik måte at objekter som har ID mindre enn tre vil bli lagret i"filterobj”Og de resterende vil bli foreldet:

La filterobj = objdata.filter ((element) => elementet.id < 3);

Til slutt, logg de filtrerte objektene som tilfredsstiller ovennevnte tilstand på konsollen:

konsoll.logg ("De filtrerte objektene er:", filterobj);

I den gitte utgangen kan det observeres at objektene blir filtrert ut basert på verdien av "id”Uavhengig av de tildelte boolske verdiene.

Vi har diskutert forskjellige metoder for å filtrere objekter i JavaScript.

Konklusjon

For å filtrere objekter i JavaScript, bruk "filter()”Og“Søk()”Metoder i kombinasjon for å søke etter objektets verdi og filtrere den. Videre kan bare filteret () brukes til å filtrere ut egenskapen til et objekt basert på de ekstra forholdene. Denne oppskrivningen har forklart tre metoder for å filtrere objekter i JavaScript.