2011-09-16 15 views
23

Se ho la seguente variabile in javascriptin javascript, come posso ottenere l'ultimo carattere di una stringa

var myString = "Test3"; 

qual è il modo più veloce per analizzare il "3" da questa stringa che opera in tutti i browser (torna a IE6)

+7

Perché dobbiamo rispondere a domande come questa? Ci vogliono 30 secondi per cercare nel manuale? –

+0

@ooo Hai problemi di grammatica? Puoi scrivere una frase con una lettera maiuscola all'inizio e segni di punteggiatura? – Bakudan

+3

@Pekka - non sono d'accordo, ci sono 7 risposte qui e la maggior parte di esse sono errate in quanto non funzionano in tutti i browser. Non è così semplice come sembra. – leora

risposta

62

Dal momento in Javascript una stringa è un array di caratteri, si può accedere l'ultimo carattere per la lunghezza della stringa.

var lastChar = myString[myString.length -1]; 
+1

Nice, e questo è leggermente più veloce. Vedi http://jsperf.com/get-last-character-from-string – ryanve

+1

Nota: questo è stato introdotto in es5, quindi non è supportato in browser molto vecchi, ad es. ** ** IE6. – programmer5000

+6

** IE6 ** - 23 feb 2017 - sul serio? –

2

Utilizzare il metodo charAt. Questa funzione accetta un argomento: l'indice del carattere.

var lastCHar = myString.charAt(myString.length-1); 
15

Lo fa:

myString.substr(-1); 

Questo restituisce una stringa di myString a partire da un carattere dalla fine: l'ultimo carattere.

Questo funziona anche:

myString.charAt(myString.length-1); 
+3

substr non sembra essere supportato in Internet Explorer – leora

+1

sei d'accordo che questo non funziona in IE6 7? – leora

+0

@leora IE non può gestire valori negativi in ​​'substr' secondo https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/substr – ryanve

1
myString.substring(str.length,str.length-1) 

Si dovrebbe essere in grado di fare qualcosa di simile a quanto sopra - che otterrà l'ultimo carattere

+0

Ho dovuto ottenere gli ultimi caratteri '10' e ha funzionato per me' myString.substring (str.length, str.Lunghezza-10) '. Grazie compagno! – hmd

2

stringhe Javascript avere una proprietà length che ti indicherà la lunghezza del file stringa.

Poi tutto quello che dovete fare è utilizzare la funzione substr() per ottenere l'ultimo carattere:

var myString = "Test3"; 
var lastChar = myString.substr(myString.length -1); 

edit: sì, o utilizzare la notazione array come gli altri posti prima di me hanno fatto.

Lots of String functions explained here

0

si dovrebbe guardare funzione charAt e prendere la lunghezza della stringa.

var b = 'I am a JavaScript hacker.'; 
console.log(b.charAt(b.length-1)); 
Problemi correlati