I have a multidimensional array but the ID’s are unique across parents and children, so I have a problem looping through using a for loop. The problem is that I cannot seem to grab the ID of the children. How do you think I should handle this?
var Options = [
{
id: 0,
children: []
},
{
id: 2,
children: []
},
{
id: 3,
children: [
{
id: 4,
children: []
},
{
id: 5,
children: []
},
{
id: 6,
children: []
}
]
},
{
id: 7,
children: [
{
id: 8,
children: []
},
{
id: 9,
children: []
}
]
}
];
I have kept the code concise for the sake of brevity. What I am trying to do is iterate through the array to compare ID’s.
This does not look like a “multidimensional array”, but rather like a tree. Looping one level can be done with a simple for-loop:
To loop the tree in-order, you will need a recursive function:
To get all children by their id, so that you can loop through the ids (regardless of the tree structure), use a lookup table:
…and to loop them sorted by id, you now can do