JS-Schleife durch ein json-Objekt
ich versuche Durchlaufen ein json-Objekt (javascript), aber es scheint nicht korrekt zu funktionieren... es ist sehr verwirrend für mich zu schreiben, eine Funktion recursiv, also vielleicht einer der Experten hier mir helfen könnte 🙂
Das json-Objekt:
{
"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"
}
}
]
}
Meinen versuchen das problem zu lösen
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"]);
}
}
Das problem ist, dass die Funktionen nicht ausführen, die über jedes element, wie ich es möchte.
habe ich etwas gelesen über jQuery jeder aber ich bin nicht sehr vertraut mit dieser. plus ich bin mit Titan und ich weiß nicht genau, ob ich jquery verwenden.
es wäre soo genial wenn mir jemand helfen kann aus diesem 🙂
- Warum haben Sie auskommentierten Codes?!
- Seine auskommentiert ein. Ich werde davon ausgehen, dass ein Tippfehler ist. Sobald Sie das Parsen der JSON mit
JSON.parse
können Sie die Schleife durch. Nun, je nachdem, was es ist, ist, wie Sie die Schleife. Wenn Sie die JSON-ist ein array von Objekten, dann können Sie Durchlaufen es mit der klassischen for-Schleife. Allerdings, wenn es ein Objekt ist, und Sie versuchen, Durchlaufen Sie die Eigenschaften des Objekts, verwenden Sie diefor...in
Schleife kombiniert mit derobj.hasOwnProperty
überprüfen. - Es gibt keine solche Sache wie ein JSON-Objekt.
- Hey vielen Dank so weit - mein Ziel ist es, ein array, das alle Ordner und Ihre Unterordner. Aber selbst die für Sie in nur Schleifen durch die erste "Schicht", nicht wahr?
- Ihre
OBJECT
ist sehr schlecht. Können wir es geändert, um ein besseres?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Arbeiten GEIGE Demo
Ich denke, dass Ihr
JSON
ist sehr Komplex, da es keine Notwendigkeit. Wenn Sie ein Objekt wie dieses:Können Sie Durchlaufen Sie von einem rekursive Funktion:
Überprüfen Sie die FIDDLE Demo.
Es ist keine Sache wie ein JSON-Objekt. JSON ist eine Möglichkeit zum formatieren von Daten. Sie versuchen, gehen durch ein gewöhnliches javascript-Objekt. Kann man sehen, wie in der ersten Antwort hier
JSON ist multi-array können wir aus den Daten[a][b]... um es zu bekommen.