Array. prototype. findLast()
Zwraca ostatni element spełniający warunek, przeszukując tablicę od końca.
- Zwraca
- Ostatni pasujący element albo
undefined. - Zmienia oryginał
- Nie
Przykład
#const attempts = [
{ score: 40, passed: false },
{ score: 75, passed: true },
{ score: 55, passed: false },
{ score: 90, passed: true }
]
console.log(attempts.findLast((a) => !a.passed))
console.log(attempts.findLastIndex((a) => a.passed))Definicja i zastosowanie
#Metoda findLast() działa jak find(), ale zaczyna od ostatniego elementu i idzie w stronę początku. Zwraca pierwszy napotkany pasujący element, czyli ostatni w kolejności tablicy.
Przydaje się przy danych ułożonych chronologicznie: ostatnia wiadomość od danej osoby, ostatnie nieudane podejście do testu, najnowszy wpis spełniający warunek.
Jej odpowiednik zwracający indeks to findLastIndex(). Obie metody nie odwracają tablicy, więc są wydajniejsze niż [...array].reverse().find().
Składnia
#array.findLast(callbackFn)
array.findLast(callbackFn, thisArg)Parametry
#callbackFn
function (element, index, array)
Funkcja testująca wywoływana od końca tablicy.thisArg
opcjonalny
Wartośćthiswewnątrz funkcji.
Obsługa przeglądarek
#Szeroko dostępne
Działa we wszystkich nowoczesnych przeglądarkach, także na telefonach. Możesz używać bez obaw.
- Chrome
- Edge
- Firefox
- Safari
Dobre praktyki
#- Zamiast odwracać tablicę, żeby znaleźć ostatni element, użyj
findLast(). Nie tworzysz kopii i nie mutujesz danych. - Gdy potrzebujesz pozycji, sięgnij po
findLastIndex().
Powiązane hasła
#- Array.prototype.find()Zwraca pierwszy element spełniający warunek albo undefined.
- Array.prototype.findIndex()Zwraca indeks pierwszego elementu spełniającego warunek albo -1.
- Array.prototype.at()Zwraca element o podanym indeksie, także liczonym od końca.
- Array.prototype.findLastIndex()Zwraca indeks ostatniego elementu spełniającego warunek, szukając od końca, albo -1.
Widzisz błąd albo brakuje przykładu? Napisz do nas.