Метод indexOf

Метод indexOf обавља претрагу елемента у низу. У првом параметру наводимо елемент за претрагу. Метод враћа позицију првог пронађеног елемента, или -1, ако такав елемент не постоји. Други опциони параметар метода задаје позицију са које треба почети претрагу.

Синтакса

javascriptниз.indexOf(елемент, [одакле почети]);

Пример

Хајде да нађемо позицију прве тројке у низу:

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

console.log(res);

Резултат извршавања кода:

javascript2

Пример

Нека сада елемент за проверу није у низу:

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

console.log(res);

Резултат извршавања кода:

javascript-1

Пример

Почнимо претрагу са задате позиције:

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

console.log(res);

Резултат извршавања кода:

javascript5

Честа грешка

Понекад се метод користи за проверу присутства елемента у низу. У том случају је лако направити грешку ако се провоба изврши на следећи начин:

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

Ова провера ће радити за све позиције, осим за нулту - јер она се тумачи као false.

Исправно је проверавати присутство елемента на следећи начин:

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

Погледајте такође

  • метод includes,
    који проверава да ли елемент постоји у низу
  • метод lastIndexOf,
    који тражи елементе од краја
  • метод at,
    који враћа елемент низа према његовом индексу
  • метод match,
    који тражи поклапања у стрингу
  • метод search,
    који обавља претрагу