String.prototype.lastIndexOf()

Метод lastIndexOf() повертає у об'єкті String, що його викликав, індекс останнього вживання вказаного значення. Пошук здійснюється з кінця рядка, починаючи з індекса fromIndex. Повертає -1, якщо значення не було знайдене.

Синтаксис

str.lastIndexOf(searchValue[, fromIndex])

Параметри

searchValue
Рядок, що є шуканим значенням. Якщо searchValue є порожнім рядком, то повертається fromIndex.
fromIndex Optional
Індекс останнього символу у рядку, який розглядатиметься як початок збігу. Значенням за замовчуванням є +Infinity. Якщо fromIndex >= str.length, пошук здійснюється по всьому рядку. Якщо fromIndex < 0, то результат буде той самий, що і за fromIndex = 0.

Вертає

Індекс останнього знайденого збігу (першого з кінця); якщо збігу не знайдено, вертає значення -1.

Опис

Символи рядка мають індекси зліва направо. Індексом першого символу є 0, а індексом останнього str.length - 1.

'морок'.lastIndexOf('о');      // вертає  3
'морок'.lastIndexOf('о', 2);   // вертає  1
'морок'.lastIndexOf('о', 0);   // вертає -1
'морок'.lastIndexOf('ф');      // вертає -1
'морок'.lastIndexOf('м', -5);  // вертає  0
'морок'.lastIndexOf('м', 0);   // вертає  0
'морок'.lastIndexOf('');       // вертає  5
'морок'.lastIndexOf('', 2);    // вертає  2

Заувага: 'баба'.lastIndexOf('ба', 2) поверне 2, а не 0, оскільки fromIndex обмежує лише початок збігу.

Регістрозалежність метода lastIndexOf()

Метод lastIndexOf() чутливий до регістру. Наприклад, наступний вираз вертає -1:

'Брі, Дорблю, Камамбер'.lastIndexOf('дорблю');  // вертає -1

Приклади

Використання indexOf() та lastIndexOf()

Наступний приклад використовує indexOf() та lastIndexOf(), щоб знайти значення у рядку "абабагаламага".

var anyString = 'абабагаламага';

console.log('Індекс першого "га" з початку дорівнює ' + anyString.indexOf('га'));
// виводить 5
console.log('Індекс першого "га" з кінця дорівнює ' + anyString.lastIndexOf('га')); 
// виводить 11
console.log('Індекс "баба" з початку дорівнює ' + anyString.indexOf('баба'));
// виводить 1
console.log('Індекс "баба" з кінця дорівнює ' + anyString.lastIndexOf('баба'));
// виводить 1

Специфікації

Специфікація
ECMAScript (ECMA-262)
The definition of 'String.prototype.lastIndexOf' in that specification.

Підтримка веб-переглядачами

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
lastIndexOfChrome Full support 1Edge Full support 12Firefox Full support 1IE Full support 6Opera Full support 3Safari Full support 1WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 10.1Safari iOS Full support 1Samsung Internet Android Full support 1.0nodejs Full support 0.1.100

Legend

Full support  
Full support

Див. також