问题
I have an object that is dynamically created. Here's a simple example:
global.data {
children: [
0: {
children: [
0: {
children: value
}
]
}
]
}
What I want to do is check if the object (global.data) has a property of 'children', grab properties from it, and send that object ('children') back through the loop to see if it has a property of 'children' of it's own. I want it to keep going until there are no more 'children' left to traverse though.
回答1:
Run a while loop till it reaches to deepest. jsfiddle
global = {};
global.data = {
children: [
{
children: [
{
children: "value"
}
]
}
]
}
var obj = global.data;
while( typeof obj == 'object' && typeof obj.children == 'object'){
obj = obj.children[0];
}
obj = obj.children ? obj.children : obj;
// at this point obj is either undefined or has no children property.
来源:https://stackoverflow.com/questions/13038014/javascript-traversing-through-an-object