95 of 264 menu

Metoda indexOf

Metoda indexOf provádí vyhledávání prvku v poli. V prvním parametru zadáme prvek, který hledáme. Metoda vrací index prvního nalezeného prvku, nebo -1, pokud takový prvek neexistuje. Druhý volitelný parametr metody nastavuje pozici, od které má vyhledávání začít.

Syntaxe

pole.indexOf(prvek, [odkud začít]);

Příklad

Pojďme najít pozici první trojky v poli:

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

Výsledek provedení kódu:

2

Příklad

Nyní nechť kontrolovaný prvek v poli neexistuje:

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

Výsledek provedení kódu:

-1

Příklad

Začněme vyhledávání od zadané pozice:

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

Výsledek provedení kódu:

5

Častá chyba

Metoda je někdy používána pro kontrolu přítomnosti prvku v poli. V tomto případě lze snadno udělat chybu, pokud se kontrola provede následujícím způsobem:

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

Tato kontrola bude fungovat pro všechny pozice kromě nulté - ta je interpretována jako false.

Správně se přítomnost prvku kontroluje následujícím způsobem:

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

Viz také

  • metoda includes,
    která kontroluje přítomnost prvku v poli
  • metoda lastIndexOf,
    která hledá prvky od konce
  • metoda at,
    která vrací prvek pole podle jeho indexu
  • metoda match,
    která hledá shody v řetězci
  • metoda search,
    která provádí vyhledávání
Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout