【发布时间】:2012-08-03 14:22:39
【问题描述】:
我对从一种形式的数组到另一种形式的数据结构转换存有疑问。
我的输入数据是这样的,
var testVar=[
{
"count": 1,
"term": "Company",
"Company": [
{
"Tata": [
{
"count": 1,
"term": "Tatagroup"
}
],
"sector": "Automotive",
"type": "Car"
},
]
},
{
"count": 2,
"term": "Country",
"Country": [
{
"France": [
{
"count": 1,
"term": "France"
}
],
"region": "Europe",
"Player": "Zidane",
"term": "France",
"code": "FRA"
},
{
"region": "Europe",
"Player": "Federer",
"term": "Switzerland",
"Switzerland": [
{
"count": 1,
"term": "Switzerland"
}
],
"code": "SWI"
}
]
}];
我正在尝试将其转换为表单,
[ "Tata" : [{"sector" : "automotive"}, "type" : "car"], "France": [{"region" : "Europe}, {"Player" : "Zidane"} , {"code" : "FRA"}], "switzerland" : [{"region" : "Europe}, {"Player" : "Federer"} , {"code" : "SWI"}]];
我想出的代码看起来像http://jsfiddle.net/X2apw/2/,bt 它不准确..
【问题讨论】:
-
你想要的结果不是 JSON
-
首先:它坏了——
["Tata":[]]会给你一个错误。{ "Tata" : [] }是可以接受的。和[{"Tata":[]}]一样。你现在得到的是一大堆损坏的 JSON。["type":"car"]也是如此。同样,{"type":"car"}或[{"type":"car"}]。第二……你为什么要这样做?即使你做对了,为什么要选择像parsedData[0].Tata[1].type; parsedData[1].France[0].region; parsedData[1].France[1].Player; parsedData[2].switzerland[2].code;这样的对象?不知道哪个术语在哪个对象中的哪个数组中的哪个点有什么好处?
标签: javascript jquery arrays