Risposte:
Un'alternativa elegante e breve, è il String.prototype.slice
metodo.
Proprio da:
str.slice(-1);
Un indice di inizio negativo suddivide la stringa da length+index
, a length
, essendo indice -1
, viene estratto l'ultimo carattere:
"abc".slice(-1); // "c";
slice()
metodo. - La loro funzionalità è concettualmente simile (copie parziali) -------- (Nel caso in cui tu stia leggendo il codice e vedi .slice()
)
str.slice(-1)
fa davvero ottenere l'ultimo carattere della stringa (come l'OP richiesto), proprio come se si è utilizzato str.charAt(str.length - 1)
, provare: "abc".slice(-1)
. Stavo mostrando qui un utilizzo di String.prototype.slice
con un indice negativo. str.slice(-n)
otterrà gli ultimi n
caratteri della stringa originale come nuovo valore di stringa. Ulteriori informazioni: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
Utilizzare charAt
:
Il metodo charAt () restituisce il carattere all'indice specificato in una stringa.
È possibile utilizzare questo metodo insieme alla length
proprietà di una stringa per ottenere l'ultimo carattere di quella stringa.
Per esempio:
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)
Alcuni browser consentono (come estensione non standard) di accorciarlo per:
str[str.length - 1];
Puoi raggiungere questo obiettivo in modi diversi ma con prestazioni diverse,
1. Usando la notazione parentesi:
var str = "Test";
var lastLetter = str[str.length - 1];
Ma non è consigliabile utilizzare le parentesi. Controlla i motivi qui
2. carattere [indice]:
var lastLetter = str.charAt(str.length - 1)
Questo è leggibile e veloce tra gli altri. È il modo più raccomandato.
3. sottostringa:
str.substring(str.length - 1);
4. fetta:
str.slice(-1);
È leggermente più veloce della sottostringa.
Puoi controllare le prestazioni qui
Con ES6:
Puoi usare str.endsWith("t");
Ma non è supportato in IE. Controlla maggiori dettagli sulle estremità Con qui
str.slice(-1);
endsWith
adatta qui, che fa qualcosa di completamente diverso.
Usa substr con il parametro -1 :
"Linto.yahoo.com." Substr (-1).;
è uguale a "."
Nota:
Per estrarre i caratteri dalla fine della stringa, utilizzare un numero di inizio negativo (non funziona in IE 8 e precedenti).
Un modo semplice per farlo è usare questo :)
var word = "waffle"
word.endsWith("e")
Puoi ottenere l'ultimo carattere in questo modo:
var lastChar=yourString.charAt(yourString.length-1);
Utilizzare la funzione charAt JavaScript per ottenere un carattere in una determinata posizione con indice 0. Usa lunghezza per scoprire quanto è lunga la stringa. Vuoi l'ultimo carattere in modo che sia lunghezza - 1. Esempio:
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];
È possibile utilizzare questo semplice metodo ES6
const lastChar = (str) => str.split('').reverse().join(',').replace(',', '')[str.length === str.length + 1 ? 1 : 0];
// example
console.log(lastChar("linto.yahoo.com."));
Questo funzionerà in tutti i browser.