[ Leksykon ] [ JavaScript ] [ Tablice ] [ Metody ] [ Właściwości ] [ Array() ]
Array.prototype.indexOf()
[_] [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]
Przykłady:
const tablica = ['A', 'B', 'C', 'B', 'E'];
console.log(tablica.indexOf('B'));
// 1
console.log(tablica.indexOf('B', 3));
// 3
console.log(tablica.indexOf('G'));
// -1
const tablica = [1, 2, 2, NaN];
console.log(tablica.indexOf(1)); // 0
console.log(tablica.indexOf(5)); // -1
console.log(tablica.indexOf(2, 2)); // 2
console.log(tablica.indexOf(2, -1)); // 2
console.log(tablica.indexOf(1, -3)); // 0
console.log([1, , 10].indexOf(undefined)); // -1
console.log(tablica.indexOf(NaN)); // -1
const skrzynia = [];
const tablica = ['A', 'B', 'C', 'B', 'E', 'B'];
const szukaj = 'B';
let test = tablica.indexOf(szukaj);
while (test !== -1) {
skrzynia.push(test);
test = tablica.indexOf(szukaj, test + 1);
}
console.log(skrzynia);
// Array [1, 3, 5]
function updateTablica(tablica, i) {
if (tablica.indexOf(i) === -1) {
tablica.push(i);
console.log(`Nowa tablica: ${tablica}`);
} else {
console.log(`${i} istnieje już.`);
}
}
const tablica = ['A', 'B', 'C', 'B', 'E', 'B'];
updateTablica(tablica, "F"); // "Nowa tablica: A,B,C,B,E,B,F"
updateTablica(tablica, "F"); // "F istnieje już."
const tablica = {
length: 3,
0: 2,
1: 3,
2: 4,
3: 5,
};
console.log(Array.prototype.indexOf.call(tablica, 2));
// 0
console.log(Array.prototype.indexOf.call(tablica, 5));
// -1
console.log(Array.prototype.indexOf.call(tablica, 4));
// 2
Opis:
Metoda indexOf() nstancji Array zwraca pierwszy indeks, pod którym dany element można znaleźć w tablicy, lub -1, jeśli go nie ma. Pierwszy parametr element do zlokalizowania w tablicy. Drugi element tablicy indeks od zera, od którego należy rozpocząć wyszukiwanie, przekonwertowany na liczbę całkowitą. Indeks ujemny odliczany jest od końca tablicy. Jeśli drugi parametr < -array.length lub drugi parametr zostanie pominięte, 0 zostanie użyte, powodując przeszukanie całej tablicy. Jeżeli drugi parametr >= array.length, tablica nie jest przeszukiwana i -1 jest zwracana. Wartość zwracana pierwszy indeks elementu w tablicy; -1 jeśli nie zostanie znaleziony. Metoda indexOf() porównuje elementy tablicy przy użyciu ścisłej równości ten sam algorytm, którego używa === operator. NaN wartości nigdy nie są porównywane jako równe, dlatego indexOf() zawsze zwracane jest, -1 gdy pierwszy element jest NaN. Metoda indexOf() pomija puste miejsca w rzadkich tablicach. Metoda indexOf() jest ogólna. Oczekuje tylko, że this wartość będzie miała length właściwość i właściwości z kluczem całkowitym.
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().
Linki: