Ich habe eine komplexe JSON-Datei, die ich mit Javascript bearbeiten muss, um sie hierarchisch zu machen, um später einen Baum zu erstellen. Jeder Eintrag des json hat: id : eine eindeutige id, parentId : die id des übergeordneten Knotens (die 0 ist, wenn der Knoten eine Wurzel des Baums ist) level : die Ebene der Tiefe im Baum
Die json-Daten sind bereits “bestellt”. Ich meine, dass ein Eintrag über sich selbst einen Elternknoten oder Bruderknoten und unter sich selbst einen Kindknoten oder einen Bruderknoten haben wird.
Eingang:
{
"People": [
{
"id": "12",
"parentId": "0",
"text": "Man",
"level": "1",
"children": null
},
{
"id": "6",
"parentId": "12",
"text": "Boy",
"level": "2",
"children": null
},
{
"id": "7",
"parentId": "12",
"text": "Other",
"level": "2",
"children": null
},
{
"id": "9",
"parentId": "0",
"text": "Woman",
"level": "1",
"children": null
},
{
"id": "11",
"parentId": "9",
"text": "Girl",
"level": "2",
"children": null
}
],
"Animals": [
{
"id": "5",
"parentId": "0",
"text": "Dog",
"level": "1",
"children": null
},
{
"id": "8",
"parentId": "5",
"text": "Puppy",
"level": "2",
"children": null
},
{
"id": "10",
"parentId": "13",
"text": "Cat",
"level": "1",
"children": null
},
{
"id": "14",
"parentId": "13",
"text": "Kitten",
"level": "2",
"children": null
},
]
}
Erwartete Ausgabe :
{
"People": [
{
"id": "12",
"parentId": "0",
"text": "Man",
"level": "1",
"children": [
{
"id": "6",
"parentId": "12",
"text": "Boy",
"level": "2",
"children": null
},
{
"id": "7",
"parentId": "12",
"text": "Other",
"level": "2",
"children": null
}
]
},
{
"id": "9",
"parentId": "0",
"text": "Woman",
"level": "1",
"children":
{
"id": "11",
"parentId": "9",
"text": "Girl",
"level": "2",
"children": null
}
}
],
"Animals": [
{
"id": "5",
"parentId": "0",
"text": "Dog",
"level": "1",
"children":
{
"id": "8",
"parentId": "5",
"text": "Puppy",
"level": "2",
"children": null
}
},
{
"id": "10",
"parentId": "13",
"text": "Cat",
"level": "1",
"children":
{
"id": "14",
"parentId": "13",
"text": "Kitten",
"level": "2",
"children": null
}
}
]
}
Es gibt mehrere Möglichkeiten, das zu tun, hast du schon etwas ausprobiert?
– bfavaretto
2. August 2013 um 13:23 Uhr
Ich gehe davon aus, dass a
parentId
von0
bedeutet, dass es keine übergeordnete ID gibt und die oberste Ebene sein sollte.– Donnie D’Amato
12. April 2016 um 11:28 Uhr
Normalerweise erforderten solche Aufgaben umfangreiche Arbeitswissensobjekte. Gute Frage
– Gangadhar JANNU
14. Oktober 2018 um 11:14 Uhr