Metoda indexOf

Metoda indexOf izvede iskanje elementa v tabeli. V prvem parametru določimo element za iskanje. Metoda vrne številko prvega najdenega elementa, ali -1, če takega elementa ni. Drugi neobvezni parameter metode določa pozicijo, s katere naj se začne iskanje.

Sintaksa

javascripttabela.indexOf(element, [od kod začeti]);

Primer

Poiščimo pozicijo prve trojke v tabeli:

javascriptlet arr = [1, 2, 3, 3, 3, 4, 5];
let res = arr.indexOf(3);

console.log(res);

Rezultat izvajanja kode:

javascript2

Primer

Naj zdaj preverjenega elementa ni v tabeli:

javascriptlet arr = [1, 2, 3, 4, 5];
let res = arr.indexOf(6);

console.log(res);

Rezultat izvajanja kode:

javascript-1

Primer

Začnimo iskanje z določeno pozicijo:

javascriptlet arr = [1, 2, 3, 4, 5, 3];
let res = arr.indexOf(3, 4);

console.log(res);

Rezultat izvajanja kode:

javascript5

Pogosta napaka

Včasih metodo uporabijo za preverjanje prisotnosti elementa v tabeli. V tem primeru je enostavno narediti napako, če se preverjanje izvede na naslednji način:

javascriptif (arr.indexOf(3)) {
  console.log(true);
} else {
  console.log(false);
}

Tako preverjanje bo delovalo za vse pozicije, razen za ničelno - saj se ta razlaga kot false.

Pravilno je preverjati prisotnost elementa na naslednji način:

javascriptif (arr.indexOf(3) !== -1) {
  console.log(true);
} else {
  console.log(false);
}

Glejte tudi

  • metodo includes,
    ki preverja prisotnost elementa v tabeli
  • metodo lastIndexOf,
    ki išče elemente od konca
  • metodo at,
    ki vrne element tabele po njegovem indeksu
  • metodo match,
    ki išče ujemanja v nizu
  • metodo search,
    ki izvaja iskanje