【问题标题】:Javascript Multi-level array of JSON objects - how to access key-value pair in second level or higherJavascript JSON对象的多级数组-如何访问二级或更高级别的键值对
【发布时间】:2010-12-11 15:04:27
【问题描述】:

考虑以下 JSON 对象数组:

myList = [
    {title:"Parent1",
        children:[{childname:"Child11"},
                     {childname:"Child12"}],
        cars:[{carname:"Car11"},
              {carname:"Car12"}]
    },
    {title:"Parent2",
        children:[{childname:"Child21"},
                     {childname:"Child22"}],
        cars:[{carname:"Car21"},
              {carname:"Car22"}]
    }
];

如何在 javascript 中访问“Child21”?以下选项无效:

var myString = myList[1].children[0].childname; //Does not work
var myString = myList[1]["children"][0].childname; //Does not work

【问题讨论】:

  • UGH*** 请格式化代码!
  • 你的第一个例子myList[1].children[0].childname确实工作。
  • 你的意思是carname...正确的crecentfresh...把它放在答案中,我会投票给它
  • @Zoidberg:不确定,我想问题正在寻找"Child21"
  • 你的第一个选项是正确的;如果它不适用于您的设置,则问题不在于您的代码(如所写)。 “儿童”可能是一个糟糕的选择,因为它无处不在。您是否使用了因命名约定而产生干扰的库?

标签: javascript json multidimensional-array


【解决方案1】:

这对我来说没问题:

myList[1].children[0].childname

这样也行:

myList[1]["children"][0].childname;

完整,

<html>
<body>
<script>
var myList = [
    {title:"Parent1",
        children:[{childname:"Child11"},
                     {childname:"Child12"}],
        cars:[{carname:"Car11"},
              {carname:"Car12"}]
    },
    {title:"Parent2",
        children:[{childname:"Child21"},
                     {childname:"Child22"}],
        cars:[{carname:"Car21"},
              {carname:"Car22"}]
    }
];
alert (myList[1].children[0].childname);
</script>
</body>
</html>

【讨论】:

  • +1 给你而不是其他人,因为 HTML 示例 + 5 分钟前的答案!
【解决方案2】:

var myString = myList[1].children[0].childname;

在 FireFox 的 Firebug 作品中

【讨论】:

    【解决方案3】:

    确实工作...

    alert(myList[1].children[0].childname);
    

    【讨论】:

      【解决方案4】:

      您的第一个选择...

      var myString = myList[1].children[0].childname;
      

      应该可以正常工作。

      【讨论】:

        猜你喜欢
        • 2017-06-05
        • 1970-01-01
        • 2017-02-11
        • 1970-01-01
        • 2017-09-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多