【发布时间】:2011-01-07 02:00:15
【问题描述】:
有没有办法在 JSON 中嵌套对象,这样我就不必从所有内容中创建数组?为了让我的对象被正确解析,我似乎需要这样的结构:
{"data":[{"stuff":[
{"onetype":[
{"id":1,"name":"John Doe"},
{"id":2,"name":"Don Joeh"}
]},
{"othertype":[
{"id":2,"company":"ACME"}
]}]
},{"otherstuff":[
{"thing":
[[1,42],[2,2]]
}]
}]}
如果我将此对象提取到名为“result”的变量中,我必须像这样访问嵌套对象:
result.data[0].stuff[0].onetype[0]
和
result.data[1].otherstuff[0].thing[0]
这对我来说似乎很笨拙和多余,如果可能的话,我更喜欢:
result.stuff.onetype[0]
和
result.otherstuff.thing
但是当一切都是数组时,我怎样才能直接使用对象键呢?对于我困惑和未受过教育的头脑来说,这样的事情似乎更合适:
{"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]]
}
}
}
我可能在这里误解了一些基本的东西,但我无法让 jQuery 解析器(也不是 jQuery 1.4 使用的本机 FF 解析器)接受第二个样式对象。如果有人能启发我,将不胜感激!
【问题讨论】:
-
具有多个属性的对象的语法如下:
{"stuff": ..., "otherstuff": ...} -
@Jason:他似乎已经知道了;他自己写了
{"id":2,"name": ""}。但是,这或多或少是他要问的,所以我不确定。
标签: javascript jquery json syntax parsing