Znajdź wartość w szeregu obiektów w JavaScript

Znajdź wartość w szeregu obiektów w JavaScript
Czasami programiści muszą wyszukiwać określone dane w szeregu obiektów opartych na określonej wartości lub właściwości, zaktualizować lub usuwać z niej dane i tak dalej. Aby znaleźć określoną wartość w szeregu obiektów, użyj wbudowanych metod JavaScript o nazwie „znajdować()”Metoda lub„FindIndex ()”Metoda uzyskania indeksu wartości określonej.

W tym artykule pokazuje procedurę znalezienia/określenia wartości w tablicy obiektów w JavaScript.

Jak znaleźć/określić wartość w tablicy obiektów w JavaScript?

Aby znaleźć wartość/element w szeregu obiektów, użyj następujących metod:

  • "Szyk.znajdować()" metoda
  • "Szyk.FindIndex ()" metoda
  • "Do" pętla

Metoda 1: Znajdź/określ wartość w tablicy obiektów za pomocą „tablicy.metoda FINK () ”

Aby znaleźć/określić wartość/element w tablicy obiektów, użyj „Szyk.znajdować()" metoda. Metoda Find () podaje pierwszy element w tablicy, który spełnia/wypełnia określoną funkcję.

Składnia

Użyj podanej składni do metody Find ():

Znajdź ((element) =>
//
)

Ta metoda akceptuje funkcję wywołania zwrotnego jako parametr, który jest wywoływany dla każdego elementu w tablicy. Ta funkcja wywołania zwrotnego powinna podać wartość logiczną, która wskazuje, czy obecny element spełnia warunek.

Przykład

Utwórz szereg obiektów zwanych „Informacje użytkownika”, Który przechowuje informacje użytkownika jako obiekt:

var userInfo = [

Nazwa: „Mari”,
Wiek: 25,
Oznaczenie: „HR”
,

FirstName: „Emma”,
Wiek: 20,
Oznaczenie: „Konta”
,

FirstName: „Mia”,
Wiek: 28,
Oznaczenie: „Admin”

];

Zadzwoń do "znajdować()„Metoda uzyskania obiektu użytkownika, którego oznaczeniem jest„Hr”:

var valuefound = userInfo.Znajdź (obj => obj.Oznaczenie === „HR”);

Wydrukuj wynik na konsoli:

konsola.log (valuefound);

Warto zauważyć, że metoda Find () zwraca tylko pierwszy element, który spełnia pojedyncze lub wiele warunków:

Można zauważyć, że metoda Find () z powodzeniem przeszukuje tablicę i znajdzie obiekt użytkownika, który ma pasujące oznaczenie.

Metoda 2: Znajdź/określ wartość w tablicy obiektów za pomocą „tablicy.metoda FindIndex () ”

Użyj "FindIndex ()„Metoda, która pozwala również znaleźć wartość w szeregu obiektów. W przeciwieństwie do metody Find (), FindIndex () wyświetla indeks pierwszego elementu, który spełnia określony warunek, a nie sam element. Jeśli nie znaleziono żadnego elementu/istnieje, zwraca -1.

Składnia

Postępuj zgodnie z podaną składnią dla metody FindIndex ():

FindIndex ((element) =>
//
)

Ta metoda akceptuje również funkcję wywołania zwrotnego jako parametr.

Przykład

Wywołać metodę FindIndex (), aby znaleźć obiekt użytkownika z „Informacje użytkownika„Tablica, której oznaczenie jest„Konta". Zwróci indeks pierwszego elementu, którego oznaczenie jest równoważne z rachunkami:

var valueIndex = UserInfo.FindIndex (obj => obj.oznaczenie === „Konta”);

Sprawdź zwrócony indeks, jeśli nie jest on równy -1, następnie wydrukuj wartość tego indeksu na konsoli:

if (valueIndex !== -1)
konsola.log (userInfo [valueIndex]);

Wyjście

Metoda 3: Znajdź/określ wartość w tablicy obiektów za pomocą pętli „for”

Najczęściej używany sposób na uzyskanie dowolnej wartości z tablicy, obiektu lub tablicy obiektów, użyj „Do" pętla. Itera przez tablicę i, w pętli, wykorzystuje instrukcję IF, aby sprawdzić, czy obecny element spełnia warunek. Po znalezieniu elementu zatrzymaj pętlę za pomocą „przerwa" oświadczenie.

Składnia

Za korzystanie z „Do”Pętla, użyj dostarczonej składni:

dla (var i = 0; i< array.length; i++)
//…

Przykład

Najpierw ustaw wartość -1 na zmienną „wartość Found”, Który zostanie zaktualizowany do indeksu, który spełnia warunek:

var valuefound = -1;

Iteruj tablicę aż do jej długości i zidentyfikuj obiekt, którego wiek jest równy „28". Jeśli obiekt zostanie znaleziony, zaktualizuj indeks zmiennej „wartość Found”I zatrzymaj pętlę:

dla (var i = 0; i< userInfo.length; i++)
if (userInfo [i].wiek == '28')
valuefound = i;
przerwa;

Na koniec wydrukuj obiekt na konsoli za pomocą „konsola.dziennik()" metoda:

konsola.log (userInfo [valuefound]);

Jak widać, obiekt, którego wiek wynosi 28 lat, został wydrukowany na konsoli:

Chodzi o znalezienie wartości w szeregu obiektów w JavaScript.

Wniosek

Aby znaleźć wartość/element w szeregu obiektów, użyj „Szyk.znajdować()" metoda, "Szyk.FindIndex ()„Metoda lub„Do" pętla. Metoda Find () zwraca tylko pierwszy element, który spełnia warunek, podczas gdy metoda FindIndex () podaje wskaźnik pierwszych elementów, które spełniają określony warunek. W tym artykule pokazano procedurę znalezienia wartości w tablicy obiektów JavaScript.