İç içe JSON nesneleri - her şey için dizileri kullanmak zorunda mıyım?
Her şeyi diziler yapmak zorunda kalmayayım JSON nesneleri iç içe olması için herhangi bir yolu var mı? Hatasız ayrıştırılması benim nesne için böyle bir yapıya ihtiyacımız var gibi görünüyor:
{"data":[{"stuff":[
{"onetype":[
{"id":1,"name":"John Doe"},
{"id":2,"name":"Don Joeh"}
]},
{"othertype":[
{"id":2,"company":"ACME"}
]}]
},{"otherstuff":[
{"thing":
[[1,42],[2,2]]
}]
}]}
Eğer bir değişken "sonuç" böyle iç içe nesneleri erişmek için var: . denen bu nesneyi alıp
result.data[0].stuff[0].onetype[0]
ve
result.data[1].otherstuff[0].thing[0]
Bu bana beceriksiz gereksiz görünüyor, mümkünse tercih ederim:
result.stuff.onetype[0]
ve
result.otherstuff.thing
Ama her şey nasıl bir dizi ise nesne anahtarları doğrudan kullanabilir miyim? Kafası karışmış ve eğitimsiz aklıma böyle bir şey daha uygun gibi görünüyor:
{"data":
{"stuff":
{"onetype":[
{"id":1,"name": ""},
{"id":2,"name": ""}
]}
{"othertype":[
{"id":2,"xyz": [-2,0,2],"n":"Crab Nebula","t":0,"c":0,"d":5}
]}
}
{"otherstuff":
{"thing":
[[1,42],[2,2]]
}
}
}
Muhtemelen burada temel bir şeyi yanlış yaptım, ama ikinci stil nesne kabul etmek için bir WordPress kullanmak çözümleyici (ne natvie FF çözümleyici jQuery 1.4 ile kullanılır) alamıyorum. Eğer biri beni aydınlatabilir eğer minnetle mutluluk duyacağız!
Çok teşekkürler
JS
CEVAP
Diziler kullanmana gerek yok.
JSON değerleri diziler, nesneler, ya da ilkel (sayı veya dize).
Bu gibi JSON yazabilirsiniz:
{
"stuff": {
"onetype": [
{"id":1,"name":"John Doe"},
{"id":2,"name":"Don Joeh"}
],
"othertype": {"id":2,"company":"ACME"}
},
"otherstuff": {
"thing": [[1,42],[2,2]]
}
}
Bu gibi kullanabilirsiniz:
obj.stuff.onetype[0].id
obj.stuff.othertype.id
obj.otherstuff.thing[0][1] //thing is a nested array or a 2-by-2 matrix.
//I'm not sure whether you intended to do that.
Nasıl Jackson nesneleri bir dizi deser...
Javascript/JSON veri ile posta yoluyla...
Nasıl Unicode olanları yerine string N...
Scala olarak kullanmak için JSON nedir...
Nasıl, MVC Denetleyicisi ASP.NET JSON ...