javascript - JS Loop through a json Object -
i trying iterate json object (in javascript) doesn't seem work correctly... it's confusing me write recursiv function, maybe 1 of experts here me :)
the json object:
{ "node": [ { "name": { "#text": "folder" } }, { "name": { "#text": "folder 2" } }, { "name": { "#text": "folder 3" }, "nodes": { "node": { "name": { "#text": "folder 3.1" }, "nodes": { "node": [ { "name": { "#text": "folder 3.1.1" }, "nodes": { "node": { "name": { "#text": "folder 3.1.1.1" } } } }, { "name": { "#text": "test 2" } } ] } } } }, { "name": { "#text": "folder 4" } } ] } my try solve problem
function newfolder(_data) { (var = 0; < _data.length; i++) { if (_data[i].nodes) { ti.api.info("sub: "); //+ _data[i].nodes.node.length ); return newfolder(_data[i].nodes.node); } else { ti.api.info("main: " + _data[i].name["#text"]); } ti.api.info("main: " + _data[i].name["#text"]); } } the problem is, functions not run through each element, want to.
i've read jquery each i'm not familar that. plus using titanium , don't know if can use jquery.
it soo awesome if can me out of :)
i think json complex there no need. if have object this:
var data = { "nodes": [ { "name": "folder 1" }, { "name": "folder 2" }, { "name": "folder 3" }, { "name": "folder 4", "nodes": [ { "name": "folder 4.1" }, { "name": "folder 4.2", "nodes": [ { "name": "folder 4.2.1" }, { "name": "folder 4.2.2" }, { "name": "folder 4.2.3" } ] }, { "name": "folder 4.3" } ] }, { "name": "folder 5" } ] }; you can iterate on recursive function:
function iteratenodes(data) { (var = 0, l = data.nodes.length; < l; i++) { var node = data.nodes[i]; console.log(node.name); if (node.nodes) { arguments.callee(node); } } } iteratenodes(data); check fiddle demo.
Comments
Post a Comment