JSFiddle - React, Tailwind, and code Playground
by murray_3
JavaScript
var data = {
"name": "My Root",
"id": "0",
"children": [
{
"name": "first level child 1",
"id": "1_1",
"children": [
{
"name": "second level child 1", "id": "2_1",
"children": [
{
"name": "third level child 1",
"id": "3_1",
"size": 3938},
{
"name": "third level child 2",
"id": "3_2",
"size": 3812}
]},
]}
]
};
//called with every property and it's value
function process(key,value) {
if(key == "name"|| key == "id") {
document.write(key + " : "+value+"<br>");
}
}
function traverse(o,func) {
for (i in o) {
func.apply(this,[i,o[i]]);
if (typeof(o[i])=="object") {
//going on step down in the object tree!!
traverse(o[i],func);
}
}
}
//that's all... no magic, no bloated framework
traverse(data,process);