我正在尝试创建一个包含对象的数组Array,
这是我的代码,
var objA = new Array();
function myFunction(){
objA ['1'] = new Array();
objA ['1'].push({'bird':'parrot','animal':'rabbit'});
var item = objA ['1'];
alert(item['bird']);
}
现在理想情况下,代码应警告'parrot',但我得到'未定义' 我做错了什么?
答案 0 :(得分:2)
您应该使用:
var item = objA ['1'][0];
执行objA ['1'].push(..)
后,您将项附加到数组objA ['1']
- 其项目应由objA ['1'][0]
,{{1}等索引引用等等..
答案 1 :(得分:2)
您将属性设置为新数组:
objA ['1'] = new Array();
因此,当然,当您检索它时,您将返回一个数组。
var item = objA ['1'];
数组没有bird
属性。但是,数组中的第一项确实存在。
alert(item[0]['bird']);
答案 2 :(得分:1)