Метод indexOf в JavaScript
Метод indexOf осуществляет поиск подстроки (указывается первым параметром) в строке. Метод вернет позицию первого совпадения, а если оно не найдено, то вернет -1. Вторым параметром (он необязателен) можно передать номер символа, откуда следует начинать поиск. Метод чувствителен к регистру символов.
Синтаксис
строка.indexOf(что ищем, [откуда начинать поиск])
Пример
В данном примере в строке Я учу учу Javascript ищется слово учу. Метод вернет 2 (с этой позиции начинается первое слово учу в строке):
let str = 'Я учу учу Javascript';
console.log(str.indexOf('учу')); // 2
Пример
В данном примере в строке Я учу учу Javascript также ищется слово учу, однако поиск начинается с 5-той позиции (я указал это вторым параметром). Метод вернет 6 (с этой позиции начинается второе слово учу в строке):
let str = 'Я учу учу Javascript';
console.log(str.indexOf('учу', 5)); // 6
Пример
В данном примере метод вернет -1, так как подстроки PHP в строке Я учу Javascript нету:
let str = 'Я учу Javascript';
console.log(str.indexOf('PHP', 5)); // -1
Пример
В данном примере метод вернет -1, так как он чувствителен к регистру (Javascript не равно JaVaScrIpt):
let str = 'Я учу Javascript';
console.log(str.indexOf('JaVaScrIpt')); // -1
Пример
В данном примере метод вернет -1, так как после выбранной позиции совпадения отсутствуют:
let str = 'Я учу Javascript';
console.log(str.indexOf('учу', 8)); // -1