JavaScript访问string作为数组的string

可以这样做:

var myString="Hello!"; alert(myString[0]); // shows "H" in an alert window 

还是应该用charAt(0)或者substr(0,1)来完成? 通过“是好的”我的意思是它会在大多数浏览器上工作,是否有一个最好的实践build议,否则说等等。

谢谢。

使用charAt可能是最好的想法,因为它最准确地传达了代码的意图。 调用substr为单个字符绝对是一个矫枉过正。

 alert(myString.charAt(0)); 

在ECMAScript 5之前将字符作为string的数字属性访问是非标准的,并且在所有浏览器中都不起作用 (例如,在IE 6或7中不起作用)。 当代码必须在非ECMAScript 5环境中工作时,应该使用myString.charAt(0) 。 或者,如果要访问string中的许多字符,则可以使用split()方法将string转换为一个字符数组:

 var myString = "Hello!"; var strChars = myString.split(""); alert(strChars[0]);