Javascript A multi-level array of JSON objects - how to access key-value pairs at a second level or higher

Consider the following array of JSON objects:

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"}]
    }
];

How to access "Child21" in javascript? The following options did not work:

var myString = myList[1].children[0].childname; //Does not work
var myString = myList[1]["children"][0].childname; //Does not work
+5
source share
4 answers

This worked fine for me:

myList[1].children[0].childname

This is also normal:

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

In full

<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>
+9
source

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

In Firefox, Firebug works

+1
source

...

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

...

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

.

0

All Articles