javascript字符串下标获取元素

在 C 语言中,没有字符串类型,字符串是字符数组,而在 js 中是有字符串类型的,那么在 js 中为什么字符串也可以通过中括号下标的方式获取元素,另外 str[i] 与 str.charAt(i) 有什么不同吗?
clipboard.png

阅读 15.4k
4 个回答

js我们一般都是通过字面量的方式创建String
var str = "abc"
当操作字符串时会转换为字符串对象
var str = new String('abc');
图片描述

js中String类的实例,是一个类数组。

clipboard.png

所以你可以通过str[0]获取一个String对象中键名为0的值。

而charAt是String类的一个api。

clipboard.png

两者区别:
clipboard.png

下标不存在时,str[index] 会返回 undefined (未定义), str.charAt(index)会返回""(空字符串)

字符串是一个类似数组的对象,有length属性,可以通过数值键(0,1)取值;
str[i]str.charAt(i)本质上没有区别,只是str.charAt(i)更标准而已

没有不同。没有什么为什么也可以,标准规定可以就是可以,我问问你为什么js里字符串既能用单引号也能用双引号?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题