我正在尝试迭代一个 json 对象(在 javascript 中),但它似乎无法正常工作......编写递归函数对我来说非常令人困惑,所以也许这里的一位专家可以帮助我:)
json对象:
{
"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"
}
}
]
}
我尝试解决问题
function newFolder(_data) {
for (var i = 0; i < _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"]);
}
}
问题是,函数不会像我想要的那样贯穿每个元素。
我读过一些关于 jQuery 的东西,但我不是很熟悉。另外我正在使用 Titanium,我不知道我是否可以使用 jquery。
如果有人能帮我解决这个问题,那就太棒了:)