JavaScript метод String.prototype.lastIndexOf()

Определение и применение

JavaScript метод lastIndexOf() возвращает позицию последнего найденного вхождения указанного значения в строке. Для осуществления поиска первого найденного вхождения указанного значения в строке вы можете воспользоваться методом indexOf().

Поддержка браузерами

Спецификация: ecma262

Поддерживается во всех основных браузерах с 2015 года.

Показать браузеры
Совместимостьjavascript.builtins.String.lastIndexOf
ВозможностьКомпьютерыМобильные
ChromeEdgeFirefoxOperaSafariChrome AndroidFirefox for AndroidOpera AndroidSafari on iOSSamsung BrowserWebView AndroidWebView on iOS
lastIndexOf✓1✓12✓1✓3✓1✓18✓4✓10.1✓1✓1.0✓4.4✓1

поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31

JavaScript синтаксис

JavaScript
// поиск переданной строки осуществляется с конца строки
string.lastIndexOf( searchValue );

// поиск переданной строки осуществляется с заданного индекса
string.lastIndexOf( searchValue, fromIndex );

Спецификация

ECMAScript: String.prototype.lastIndexOf()

Значения параметров

String: справочные сведения
Параметр Описание
searchValue Строка используемая для поиска. Обязательное значение.
Если в качестве значения передана пустая строка, то возвращается fromIndex, ограниченный диапазоном от 0 до длины строки; без fromIndex — длина строки.
fromIndex Целое число, которое определяет индекс с которого начинается поиск, если не указано то поиск осуществляется с конца строки. Необязательное значение.
Если указано значение меньше нуля, то значение считается равным нулю. Если значение выходит из допустимого диапазона (fromIndex > string.length), то оно обрабатывается как максимально возможный индекс.

Примеры, попробуйте сами

В примере «Последнее вхождение и начальная позиция» показан результат вызова метода.

Последнее вхождение и начальная позиция

Измените исходную строку или аргумент метода и сравните результат после запуска.

index.html
HTML
<!doctype html>
<html lang="ru">
  <head>
    <meta charset="UTF-8" />
    <title>Последнее вхождение и начальная позиция</title>
  </head>
  <body>
    <p>Результат выполнения выводится в консоль.</p>
  </body>
</html>
main.js
JavaScript
var x = 'stringstring' // инициализируем переменную, содержащую строку

console.log(x.lastIndexOf('')) // возвращаемое значение 12 (поиск пустой строки)
console.log(x.lastIndexOf('s')) // возвращаемое значение 6
console.log(x.lastIndexOf('rin')) // возвращаемое значение 8
console.log(x.lastIndexOf('g')) // возвращаемое значение 11
console.log(x.lastIndexOf('String')) // возвращаемое значение -1

console.log(x.lastIndexOf('ri', -2)) // возвращаемое значение -1
console.log(x.lastIndexOf('ri', 2)) // возвращаемое значение 2
console.log(x.lastIndexOf('ri', 3)) // возвращаемое значение 2
console.log(x.lastIndexOf('ri', 9)) // возвращаемое значение 8
console.log(x.lastIndexOf('s', 99)) // возвращаемое значение 6
console.log(x.lastIndexOf('', 99)) // возвращаемое значение 12 (длина строки)

console.log('abc'.lastIndexOf('', 1)) // 1