在javascript中嵌套数组

时间:2014-10-21 17:38:55

标签: javascript arrays

嘿伙计们是javasript应用程序开发的新手。我已经了解了对象和数组,我得到了数组中的值可以通过索引调用,但是在对象中它是不可能的。

所以我尝试了代码

name = ['dfsdf','sfdsf']
var b = [[name,'DFDSF']];
console.log(b[0].name);

它给了我undefined而不是返回数组名称。

我只想知道如何访问b[index].nestedarrayname

如果您提供一些示例代码,那将非常有用..谢谢

3 个答案:

答案 0 :(得分:1)

如果您希望它是一个“关联”数组,则需要将数组元素作为对象:

var b = [{name:'DFDSF'}];
console.log(b[0].name);

答案 1 :(得分:0)

当您尝试通过.运算符访问属性时,JavaScript期望对象(在这种情况下为数组)具有该名称的实际属性。数组在JavaScript中有整数索引,因此要按原样访问它:

console.log(b[0][0]);

但是,如果你想要一个关联数组,你可以创建子索引作为对象(想想JSON格式):

var b = [{'name': name}, 'DFDSF'];
console.log(b[0].name); // b[0] is the object {'name': name}
                        // b[1] is the string 'DFDSF'

答案 2 :(得分:0)

就我无耻而言,你想要名称,这是一个数组本身,所以:

 name = ['dfsdf','sfdsf']
 var b = [[name,'DFDSF']];

你可以这样做:

 1 - console.log(b[0][0]); // this will output an array which contains ['dfsdf','sfdsf']

您必须将结构更改为:

 name = ['dfsdf','sfdsf']
 var b = [
           {"name": name} // the right one name, is your actual name array , so this is b[0]
           ,
          'DSDSF' // this is b[1]
         ];

现在你可以打电话:

   console.log(b[0].name);

注意:

在javascript中,你可以通过索引调用元素iside数组,你可以用两种方式调用对象内的属性:

1 - 使用。(dot)like:object.property

2 - 使用['']喜欢:object ['property']