Z tego postu dowiesz się czym jest metoda findIndex, która jest dostarczona wraz z prototypem obiektu Array.
Do czego służy metoda findIndex w JavaScript?
Metoda findIndex
jest metodą dostępną dla obiektów typu Array w JS, która służy do znajdywania indeksu elementu w tablicy, który spełnia określone kryterium.
Mówiąc wprost dzięki findIndex
jesteś w stanie ustalić index szukanego elementu w tablicy, a następnie użyć tego indexu, aby uzyskać dostęp do elementu.
Jaka jest składnia metody Array.prototype.findIndex?
Składnia metody findIndex wygląda w następujący sposób:
array.findIndex(callback(element[, index[, array]])[, thisArg])
Gdzie callback
to funkcja, która jest wywoływana dla każdego elementu w tablicy z trzema argumentami:
element
– aktualnie przetwarzany element w tablicyindex
– indeks aktualnie przetwarzanego elementu w tablicyarray
– tablica, dla której jest wywoływana funkcja
thisArg
to opcjonalny argument, który jest używany jako this
w funkcji callback
.
Jeśli funkcja callback
zwróci true
dla któregoś z elementów, metoda findIndex
zwróci indeks tego elementu. Jeśli żaden element nie spełni kryterium, metoda zwróci -1
.
Przykłady użycia findIndex w JavaScript
? Pamiętaj, że regularne ćwiczenia i analiza kodu JavaScript to dobry sposób na stanie się lepszym programistą. Zalecam, abyś poświęcił ok. 3 minuty na spokojną analizę każdego przykładu.
Przykład 1: Znajdź index pierwszego elementu o wartości większej od 10
Do rozwiązania takiego problemu możesz użyć metody findIndex oraz funkcji strzałkowej, którą przekażesz jako argument (callback).
const numbers = [1, 2, 3, 11, 12, 13];
const index = numbers.findIndex(n => n > 10);
console.log(index); // 3
Przykład 2: Znajdź indeks elementu o nazwie „apple” w tablicy obiektów
Jak możesz się domyślić rozwiązanie tego zadania jest równie proste jak poprzednie. Przeanalizuj poniższy kod.
const fruits = [{name: 'apple', color: 'red'}, {name: 'banana', color: 'yellow'}, {name: 'orange', color: 'orange'}];
const index = fruits.findIndex(fruit => fruit.name === 'apple');
console.log(index); // 0
Podsumowanie
Metoda findIndex
jest bardzo przydatna, gdy chcesz znaleźć indeks elementu spełniającego określone kryterium w tablicy i wykonać dalsze działania na podstawie tego indeksu.
Jeśli chcesz dowiedzieć się czegoś więcej na temat findIndex i nie tylko: Dokumentacja MDN