现在有数组如下var a = [1,2,[3,4]]以前一直以为如果要输出4,应该a[2][1] 但是发现犀牛书上给出的是a[2]['1']我试了一下 发现都可以 在我的理解里方括号应该是索引值啊 为什么字符串也可以是先进行转换了吗?
1 回答
泛舟湖上清波郎朗
TA贡献1818条经验 获得超3个赞
数组的索引本身就是字符串,JavaScript 语言规定,对象的键名一律为字符串,数组也是一种对象,因此数组的键名其实也是字符串。之所以可以用数值读取,是因为非字符串的键名会自动被转为字符串。
对象是javascript的基本数据类型。对象是一种复合值。它将很多值(原始值 或者其他对象)聚合在一起。可通过名字访问这些值。对象也可以看做是属性的无序集合,每个属性都有一个名/值。属性名是字符串,因此我们可以把对象看成是从字符串到值的映射。
出自JavaScript权威指南第6版第六章对象 P118
数组是对象的页数形式。使用方括号访问数组元素就像用方括号访问对象的属性一样。JavaScript将指定的数字索引值换成字符串——索引值1变成“1”....
出自JavaScript权威指南第6版第七章数组 P146
帮您查完了!
添加回答
举报
0/150
提交
取消