2011-09-16 79 views
23

如果我在JavaScript中的以下變量在JavaScript中,我怎麼能得到的最後一個字符的字符串

var myString = "Test3"; 

是什麼,從這個字符串,在工作分析出「3」的最快方法所有的瀏覽器(回IE6

+7

爲什麼我們必須回答這樣的問題?這需要30秒鐘查看手冊? –

+0

@ooo你有什麼語法問題嗎?你能否在大寫字母和標點符號上寫下一個大寫字母的句子? – Bakudan

+3

@Pekka - 我不同意,這裏有7個答案,其中大部分是不正確的,因爲他們不工作的所有瀏覽器。並不像看起來那麼簡單。 – leora

回答

62

由於在Javascript中的字符串是一個字符數組,你可以通過字符串的長度訪問的最後一個字符。

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

不能處理'substr'中的負值 - 這個速度稍快。見http://jsperf.com/get-last-character-from-string – ryanve

+1

注:這是在ES5介紹,所以在很老的瀏覽器不支持,例如。 ** ** IE6。 – programmer5000

+6

** IE6 ** - 2017年2月23日 - 認真? –

2

使用charAt方法。該函數接受一個參數:字符的索引。

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

它做的:

myString.substr(-1); 

這個返回MyString的字符串開始從最終一個字:最後一個字符。

這也適用於:

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

SUBSTR似乎並不在Internet Explorer – leora

+1

要支持你同不同意,這並不在IE6 7工作? – leora

+0

@leora IE根據https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/substr – ryanve

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

你應該能夠做到像上面 - 這將讓最後一個字符

+0

我必須得到最後的'10'字符,它爲我工作'myString.substring(str.length,str。長度-10)'。謝謝哥們! – hmd

2

的JavaScript字符串有length屬性,會告訴你的長度字符串。

然後,所有你需要做的就是使用substr()函數來獲得最後一個字符:

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

編輯:是的,或者使用數組表示法爲其他職位我以前做過。

Lots of String functions explained here

0

你應該看看的charAt功能和繩子的長度。

var b = 'I am a JavaScript hacker.'; 
console.log(b.charAt(b.length-1)); 
相關問題