Jak znaleźć indeks obiektu w tablicy JavaScript

Jak znaleźć indeks obiektu w tablicy JavaScript
Czasami podczas pracy z obiektami zawierającymi tablice, musisz znać indeks obiektu. Możesz zastosować różne metody JavaScript, aby jednoznacznie identyfikować obiekty z ich właściwości, a następnie uzyskać dostęp do ich wskaźników. Ten przewodnik zawiera obszerne i kompleksowe wyjaśnienie, w jaki sposób można zastosować różne metody do osiągnięcia tego celu.

Znajdź indeks obiektu za pomocą metody mapy i indexof ()

Metoda MAP służy do zastosowania funkcji na każdej pozycji tablicy, przekształcenia, a następnie zwrócenia w tablicy. Możemy użyć tej metody, aby uzyskać określone właściwości obiektów, których możemy następnie użyć do identyfikacji obiektów. Po identyfikowaniu obiektu, który chcemy poznać indeks, możemy po prostu wywołać metodę indexof ():

Niech pracownicy = [FirstName: „John”, LastName: „Doe”, wiek: 38, FirstName: „John”, LastName: „Smith”, wiek: 45];
Niech ind = pracownicy.mapa (item => pozycja.wiek).indeks (45);
konsola.log (Ind);

W powyższym kodzie najpierw zdefiniowaliśmy tablicę zawierającą dwa obiekty. Obiekty zawierają dane różnych pracowników. Następnie użyliśmy funkcji mapy, aby po prostu zdobyć wiek pracowników w osobnej tablicy. Na koniec zastosowaliśmy metodę indexof (), aby uzyskać indeks obiektu, którego właściwość wieku wynosi 45. Moglibyśmy użyć funkcji mapy, aby uzyskać wartość dowolnej właściwości i uzyskać indeks obiektu na podstawie tej właściwości.

JavaScript ES6 wprowadził nową metodę o nazwie FindIndex (). Ta metoda jest o wiele bardziej elegancka, ale niestety nie działa na starych przeglądarkach.

Znajdź indeks obiektu za pomocą metody FindIndex ()

Metoda FindIndex () ma funkcję zawierającą test jako argument i stosuje ją do każdego elementu tablicy bez wprowadzania żadnych zmian w oryginalnej tablicy. Następnie zwraca pozycję elementu tablicy lub -1, jeśli żaden element nie przejdzie testu. Za pomocą metody FindIndex () nie potrzebujemy żadnej funkcji MAP ():

Niech pracownicy = [FirstName: „John”, LastName: „Doe”, wiek: 38, FirstName: „John”, LastName: „Smith”, wiek: 45];
Niech ind = pracownicy.findIndex (item => return Item.wiek == 45);
konsola.log (Ind);

Metoda FindIndex () może również przejąć indeks bieżącego elementu i tablicę bieżącego elementu jako opcjonalne argumenty.

Użyliśmy funkcji strzałek w obu powyższych przykładach, aby kod był bardziej czytelny, ale domyślna składnia funkcji może być również używana jako argument tych funkcji:

Niech pracownicy = [FirstName: „John”, LastName: „Doe”, wiek: 38, FirstName: „John”, LastName: „Smith”, wiek: 45];
Niech ind = pracownicy.findIndex (funkcja (item) return item.wiek == 45);
konsola.log (Ind);

Wniosek

Ten kompleksowy samouczek podaje dwie różne metody znalezienia wskaźników obiektów w JavaScript w oparciu o wartości ich właściwości. Metoda FindIndex () stosuje funkcję warunkową do każdego elementu samego tablicy, a następnie zwraca wskaźnik elementu, który przekazuje warunek. Ale kiedy używamy metody indexof (), musimy również użyć metody map (), aby uzyskać wartości właściwości.