String.prototype.lastIndexOf()
Метод значень String lastIndexOf() (останній індекс елемента) шукає в поточному рядку та повертає індекс останнього входження заданого підрядка. Він приймає необов'язкову початкову позицію і повертає останнє входження заданого підрядка за індексом, меншим або рівним заданому числу.
Спробуйте його в дії
Синтаксис
lastIndexOf(searchString)
lastIndexOf(searchString, position)
Параметри
searchStringПідрядок до пошуку. Всі значення зводяться до рядків, тому його відсутність або передача
undefinedпризводить до того, щоlastIndexOf()шукає рядок"undefined", а це рідко саме те, що потрібно.positionНеобов'язковеЦей метод повертає індекс останнього входження заданого підрядка за індексом, меншим або рівним
position, чиє усталене значення –+Infinity. Якщоpositionбільше довжини поточного рядка, то метод шукає в ньому всьому. Якщоpositionменше0, то поведінка така ж, як для0— тобто метод шукає заданий підрядок лише за індексом0.-
'hello world hello'.lastIndexOf('world', 4)повертає-1– адже попри те, що підрядокworldзустрічається за індексом6, ця позиція не менша або рівна4. -
'hello world hello'.lastIndexOf('hello', 99)повертає12– адже останнє входженняhelloза індексом, меншим або рівним99, знаходиться на позиції12. -
Як
'hello world hello'.lastIndexOf('hello', 0), так і'hello world hello'.lastIndexOf('hello', -5)повертають0– адже обидва ці вирази змушують метод шукатиhelloлише на індексі0.
-
Повернене значення
Індекс останньої появи шуканого searchString; -1, якщо значення не знайшлося.
Опис
Рядки індексуються від нуля: Індекс першого символу рядка – 0, а індекс останнього символу рядка – його довжина мінус 1
"канал".lastIndexOf("а"); // повертає 3
"канал".lastIndexOf("а", 2); // повертає 1
"канал".lastIndexOf("а", 0); // повертає -1
"канал".lastIndexOf("х"); // повертає -1
"канал".lastIndexOf("к", -5); // повертає 0
"канал".lastIndexOf("к", 0); // повертає 0
"канал".lastIndexOf(""); // повертає 5
"канал".lastIndexOf("", 2); // повертає 2
Чутливість до регістру
Метод lastIndexOf() чутливий до регістру. Наприклад, наступний вираз поверне -1:
"Синій Кит, Косатка".lastIndexOf("синій"); // повертає -1
Приклади
Застосування методів indexOf() та lastIndexOf()
Наступні приклади використовують indexOf() і lastIndexOf() для визначення розташування значень у рядку "Прекрасний, Прекрасний Новий Світ".
const anyString = "Прекрасний, Прекрасний Новий Світ";
console.log(anyString.indexOf("Прекрасний")); // 0
console.log(anyString.lastIndexOf("Прекрасний")); // 12
Специфікації
Сумісність із браузерами
| desktop | mobile | server | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
lastIndexOf
|
Chrome Full support 1 | Edge Full support 12 | Firefox Full support 1 | Internet Explorer Full support 6 | Opera Full support 3 | Safari Full support 1 | WebView Android Full support 1 | Chrome Android Full support 18 | Firefox for Android Full support 4 | Opera Android Full support 10.1 | Safari on iOS Full support 1 | Samsung Internet Full support 1.0 | Deno Full support 1.0 | Node.js Full support 0.10.0 |