多维数组显示



我做了这样的数组:

var multiarray = {
    cat:{
        name:'hellokitty',
        legs:4
    },
    dog:{
        name:'fred',
        legs:4
    }
};

我只想展示,猫和狗。像这样CCD_ 1。但它不起作用。

猫和狗是一种id。我想在多维对象数组中显示id。

您想要的是:

var multiarray = {
  cat:{
    name:'hellokitty',
    legs:4
  },
  dog:{
    name:'fred',
    legs:4
  }
};
console.log(Object.keys(multiarray)[0]);
console.log(Object.keys(multiarray)[1]);

正如在评论中所注意到的,您的multiarray实际上是一个对象。

另一方面,Object.keys(multiarray)将返回一个数组:对象键的列表。

请注意,Javascript不保证对象中的键(或"属性")顺序。换句话说,你不应该认为"猫"会排在第一位。

正如其他用户之前所指出的,multiarray变量实际上是Object的原型,而不是Array

var multiarray = {
    cat:{
        name:'hellokitty',
        legs:4
    },
    dog:{
        name:'fred',
        legs:4
    }
};
console.log(typeof(multiarray)); //"object"
console.log(typeof(multiarray) == Array); //false

Object的所有原型都可以在JavaScript中枚举。您可以使用for来迭代键。。。在声明中。

用于。。。in语句迭代对象,按任意顺序。对于每个不同的属性,语句可以执行。

var multiarray = {
    cat:{
        name:'hellokitty',
        legs:4
    },
    dog:{
        name:'fred',
        legs:4
    },
    ape:{
       name:'charlie',
       legs:2
    },
    elephant:{
       name:'big indian',
       legs:4
    }
};
for(var k in multiarray) { console.log(k); } //will print keys (cat, dog, ape, elephant,)

相关内容

  • 没有找到相关文章

最新更新