Helion Bestsellery

Linux. Leksykon kieszonkowy. Wydanie IV
  • Autor: Daniel J. Barrett
  • Zniżka: 34%
  • Cena: 59.90 38.94 zł
  • Marka: Helion
  • Status: Dostępna
  • Typ: Książka
  • EAN: 9788328919716
  • ISBN: 978-83-289-1971-6
Dodaj Linux. Leksykon kieszonkowy. Wydanie IV do koszyka

Helion Książka Dnia

Algorytmy w Pythonie. Techniki programowania dla praktyków
  • Autor: Piotr Wróblewski
  • Zniżka: 50%
  • Cena: 119.00 59.50 zł
  • Marka: Helion
  • Status: Dostępna
  • Typ: Książka
  • EAN: 9788328393684
  • ISBN: 978-83-283-9368-4
Dodaj Algorytmy w Pythonie. Techniki programowania dla praktyków do koszyka

Array.findLast()

[ Leksykon ] [ JavaScript ] [ Tablice ] [ Metody ] [ Właściwości ] [ Array() ]

Array.prototype.findLast()

[_] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] [Z]

findLast(callbackFn)
findLast(callbackFn, thisArg) 

Przykłady:

const tablica = [25, 20, 15, 35, 15];
const wynik = tablica.findLast((element) => element > 15);
console.log(wynik);
// 35

  

const tablica = [
{ nazwa: "A", punkty: 5 },
{ nazwa: "B", punkty: 10 },
{ nazwa: "C", punkty: 15 },
{ nazwa: "D", punkty: 20 },
];

function zadanie(a) {
return a.punkty < 12;
}

console.log(tablica.findLast(zadanie));
// Object { nazwa: "B", punkty: 10 }

 

const tablica = [
{ nazwa: "A", punkty: 5 },
{ nazwa: "B", punkty: 10 },
{ nazwa: "C", punkty: 15 },
{ nazwa: "D", punkty: 20 },
];

const wynik = tablica.findLast(({ punkty }) => punkty < 12);

console.log(wynik);
// Object { nazwa: "B", punkty: 10 }

 

function zadanie(e) {
if (e % 2 === 0 || e < 2) {
return false;
}
for (let i = 3; i <= Math.sqrt(e); i += 2) {
if (e % i === 0) {
return false;
}
}
return true;
}

console.log([1, 2, 3, 4, 5].findLast(zadanie)); // 5
console.log([2, 4, 6, 8, 10].findLast(zadanie)); // undefined
console.log([1, 5, 9, 14, 15].findLast(zadanie)); // 5

 

const tablica = [0, 1, 3, , , 5, 6];

tablica.findLast((wartosc, index) => {
console.log(`index ${index} - wartość ${wartosc}`);
});

tablica.findLast((wartosc, index) => {
if (index === 5) {
console.log(`Usuwam tablica[5] wartość ${tablica[5]}`);
delete tablica[5];
}
console.log(`index ${index} - wartość ${wartosc}`);
});

// "index 6 - wartość 6"
// "index 5 - wartość 5"
// "index 4 - wartość undefined"
// "index 3 - wartość undefined"
// "index 2 - wartość 3"
// "index 1 - wartość 1"
// "index 0 - wartość 0"
// "index 6 - wartość 6"
// "Usuwam tablica[5] wartość 5"
// "index 5 - wartość 5"
// "index 4 - wartość undefined"
// "index 3 - wartość undefined"
// "index 2 - wartość 3"
// "index 1 - wartość 1"
// "index 0 - wartość 0"

 

const tablica = {
length: 5, // tylko 5, szósty ignorowany
0: 2,
1: 7.3,
2: 9,
3: 1.1,
4: 8.5,
5: 3,
};
console.log(
Array.prototype.findLast.call(tablica, (x) => Number.isInteger(x)),
); // 9

 

Opis:
Metoda Array.findLast() instancji Array iteruje tablicę w odwrotnej kolejności i zwraca wartość pierwszego elementu, który spełnia podaną funkcję testującą. Jeśli żaden element nie spełnia funkcji testującej, undefined zwracana jest funkcja.


Jeśli chcesz znaleźć:

- pierwszy pasujący element, użyj Array.find()
- indeks ostatniego pasującego elementu w tablicy, użyj Array.findLastIndex()
- indeks wartości, użyj Array.indexOf(). Jest podobny do Array.findIndex(), ale zamiast używać funkcji testującej, sprawdza każdy element pod kątem równości z wartością.
- czy wartość istnieje w tablicy, użyj Array.includes(). Ponownie sprawdza każdy element pod kątem równości z wartością, zamiast używać funkcji testującej.
- jeśli jakikolwiek element spełnia podaną funkcję testującą, użyj Array.some().

Pierwszy parametr funkcja do wykonania dla każdego elementu tablicy. Powinien zwrócić wartość prawdziwą, wskazującą, że znaleziono pasujący element, lub wartość fałszywą w przeciwnym razie. Funkcja wywoływana jest z następującymi argumentami: Pierwszy argument bieżący element przetwarzany w tablicy. Drugi argument indeks bieżącego elementu przetwarzanego w tablicy. Trzeci argument tablica findLast() została wywołana. Parametr drugi opcjonalny wartość, która ma być używana this podczas wykonywania pierwszego parametru. Wartość zwracana ostatni element tablicy o najwyższym indeksie, który spełnia podaną funkcję testującą; undefined jeśli nie zostanie znaleziony pasujący element. Metoda findLast() jest metodą iteracyjną. Wywołuje podaną funkcję raz dla każdego elementu tablicy w kolejności malejącej, dopóki callbackFn nie zwróci wartości prawdziwej. findLast() następnie zwraca ten element i zatrzymuje iterację tablicy. Jeśli callbackFn nigdy nie zwraca prawdziwej wartości, findLast() zwraca undefined. Puste miejsca w rzadkich tablicach zachowują się tak samo jak undefined. findLast() nie mutuje tablicy, na której jest wywoływany, ale podaną funkcję, jak callbackFn można. Należy jednak pamiętać, że długość tablicy jest zapisywana przed pierwszym wywołaniem callbackFn. Dlatego: callbackFn nie odwiedzi żadnych elementów dodanych poza początkową długość tablicy w momencie findLast()rozpoczęcia wywołania. Zmiany w już odwiedzonych indeksach nie powodują callbackFn ponownego wywołania ich. Jeśli istniejący, jeszcze nieodwiedzony element tablicy zostanie zmieniony przez callbackFn, jego wartość przekazana do callbackFn będzie wartością obowiązującą w momencie odwiedzenia tego elementu. Usunięte elementy są odwiedzane tak, jakby były undefined. 

Linki:

 

 

 

 

 

Please publish modules in offcanvas position.