O método lastIndexOf() retorna o índice da última ocorrência do valor especificado encontrado na String, pesquisando de trás para frente a partir de fromIndex. Retorna -1 se o valor não for encontrado.

Sintaxe

str.lastIndexOf(searchValue[, fromIndex])

Parêmtros

searchValue
Uma string representado o valor a ser procurado. Se searchValue for uma string vazia, fromIndex é retornado.
fromIndex Optional
O índice no qual a pesquisa será iniciada de trás para frente. Qualquer número inteiro é válido. O valor padrão é str.length - 1, então toda a string é pesquisada. Se fromIndex >= str.length, toda string é pesquisada. Se fromIndex < 0, o comportamento será o mesmo que seria com o índice 0.

Descrição

Caracteres em uma string são indexados da esquerda para a direita. O índice do primeiro caractere é 0, e o índice do último caractere é str.length - 1.

'canal'.lastIndexOf('a');     // retorna 3
'canal'.lastIndexOf('a', 2);  // retorna 1
'canal'.lastIndexOf('a', 0);  // retorna -1
'canal'.lastIndexOf('x');     // retorna -1
'canal'.lastIndexOf('c', -5); // retorna 0
'canal'.lastIndexOf('c', 0);  // retorna 0
'canal'.lastIndexOf('');      // retorna 5
'canal'.lastIndexOf('', 2);   // retorna 2

Case-sensitivity

O método lastIndexOf() é sensível a maiúsculas e minúsculas. Por exemplo, a seguinte expressão retorna -1:

'Blue Whale, Killer Whale'.lastIndexOf('blue'); // retorna -1

Exemplos

Usando indexOf() e lastIndexOf()

O seguinte exemplo usa indexOf()lastIndexOf() para localizar valores nas string "Brave new world".

var anyString = 'Brave new world';

console.log('O índice do primeiro w a partir do começo é ' + anyString.indexOf('w'));
// logs 8
console.log('O índice do primeiro w a partir do final é ' + anyString.lastIndexOf('w')); 
// logs 10
console.log('O índice de "new" a partir do começo é ' + anyString.indexOf('new'));
// logs 6
console.log('O índice de "new" a partir do final é ' + anyString.lastIndexOf('new'));
// logs 6

Especificações

Especificação Estado Comentários
ECMAScript 1st Edition (ECMA-262) Padrão Initial definition.
ECMAScript 5.1 (ECMA-262)
The definition of 'String.prototype.lastIndexOf' in that specification.
Padrão  
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'String.prototype.lastIndexOf' in that specification.
Padrão  
ECMAScript Latest Draft (ECMA-262)
The definition of 'String.prototype.lastIndexOf' in that specification.
Rascunho  

Compatibilidade entre Navegadores

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Suporte básico (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Suporte básico (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

Veja também

Etiquetas do documento e colaboradores

Colaboradores desta página: mfelippi
Última atualização por: mfelippi,