2011-09-16 76 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)); 
相关问题