Respostas:
Uma alternativa elegante e curta, é o String.prototype.slice
método.
Apenas por:
str.slice(-1);
Um índice inicial negativo corta a cadeia de length+index
, para length
, sendo índice -1
, o último caractere é extraído:
"abc".slice(-1); // "c";
slice()
método. - Sua funcionalidade é conceitualmente similar (cópias parciais) -------- (Apenas no caso de você estar código de leitura e veja .slice()
)
str.slice(-1)
de facto, obter o último caractere do string (como o OP necessário), assim como se você usou str.charAt(str.length - 1)
, tente: "abc".slice(-1)
. Eu estava mostrando aqui um uso de String.prototype.slice
com um índice negativo. str.slice(-n)
obterá os últimos n
caracteres da sequência original como um novo valor. Mais informações: developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/…
Use charAt
:
O método charAt () retorna o caractere no índice especificado em uma string.
Você pode usar esse método em conjunto com a length
propriedade de uma sequência para obter o último caractere nessa sequência.
Por exemplo:
const myString = "linto.yahoo.com.";
const stringLength = myString.length; // this will be 16
console.log('lastChar: ', myString.charAt(stringLength - 1)); // this will be the string
str.charAt(str.length - 1)
Alguns navegadores permitem (como uma extensão não padrão) que você reduza para:
str[str.length - 1];
Você pode conseguir isso de maneiras diferentes, mas com desempenho diferente,
1. Usando notação de colchete:
var str = "Test";
var lastLetter = str[str.length - 1];
Mas não é recomendável usar colchetes. Confira os motivos aqui
2. charAt [index]:
var lastLetter = str.charAt(str.length - 1)
Isso é legível e mais rápido, entre outros. É a maneira mais recomendada.
3. substring:
str.substring(str.length - 1);
4. fatia:
str.slice(-1);
É um pouco mais rápido que substring.
Você pode verificar o desempenho aqui
Com ES6:
Você pode usar str.endsWith("t");
Mas não é suportado no IE. Confira mais detalhes sobre endsWith aqui
str.slice(-1);
endsWith
encaixa aqui, isso faz algo completamente diferente.
Use substr com o parâmetro -1 :
"linto.yahoo.com.". substr (-1);
é igual a "."
Nota:
Para extrair caracteres do final da string, use um número inicial negativo (isso não funciona no IE 8 e versões anteriores).
Uma maneira fácil de fazer isso é usando isso :)
var word = "waffle"
word.endsWith("e")
Você pode obter o último caractere assim:
var lastChar=yourString.charAt(yourString.length-1);
Use a função JavaScript charAt para obter um caractere em uma determinada posição indexada em 0. Use o comprimento para descobrir quanto tempo a String é. Você quer o último caractere para que seja o comprimento - 1. Exemplo:
var word = "linto.yahoo.com.";
var last = word.charAt(word.length - 1);
alert('The last character is:' + last);
var firstName = "Ada";
var lastLetterOfFirstName = firstName[firstName.length - 1];
Você pode usar este método ES6 simples
const lastChar = (str) => str.split('').reverse().join(',').replace(',', '')[str.length === str.length + 1 ? 1 : 0];
// example
console.log(lastChar("linto.yahoo.com."));
Isso funcionará em todos os navegadores.