无法从JS对象获取值

时间:2017-10-02 04:09:19

标签: javascript

请您看一下这个演示,让我知道为什么我无法从对象中提取值?

var obj = {
  webSiteName: 'StackOverFlow',
  find: 'anything',
  onDays: ['sun', 'mon',
    'tue',
    'wed',
    'thu',
    'fri',
    'sat',
    {
      name: "jack",
      age: 34
    },
    {
      manyNames: ["Narayan", "Payal", "Suraj"]
    },
  ]
};


console.log(obj.onDays[2]);
console.log(obj.onDays.manyNames[1]);

2 个答案:

答案 0 :(得分:1)

manyNames对象位于数组的第8个索引处,因此您需要:

console.log(obj.onDays[8].manyNames[1]);

对于杰克:

console.log(obj.onDays[7].name);

或年龄:

onsole.log(obj.onDays[7].age);

答案 1 :(得分:0)

您应该了解数组和对象之间的基本区别。

无论何时处理数组,都要按索引访问。

arr[index]; // obj["onDays"][7]["name"];

每当您处理一个Object时,都可以访问该属性。

obj[property] or obj.property // obj["find"];