str [0]和str.charAt(0)之间的区别

时间:2014-03-29 08:39:54

标签: javascript string

str[0]str.charAt(0)之间有什么区别?我只需输入str[i]即可访问特定字符,其中i是我想要访问的字符的索引(从0开始计算),但上周我对开源JS代码有了很好的概述,并且在我看到的每个项目中,人们使用charAt方法。

这两种方式有什么区别吗?

2 个答案:

答案 0 :(得分:6)

[]是一种访问所有类型数组的更原始的方法。

charAt()特定于字符串。

您可以使用[]访问任何数组的索引,但只能在字符串上使用charAt()

但是当谈到单独的字符串时,两者都是同一个。

但是你应该使用charAt(),因为它在所有主流浏览器中得到很好的支持,而括号表示法将在IE7中返回undefined

此外,只需访问括号表示法,而charAt()执行某些验证但不返回undefined,但会返回空字符串""

答案 1 :(得分:3)

这个

""[-4]          // undefined

"".charAt(-4)   // ""

您可以确保结果是字符串。