如何转换 JSON
How to convert JSON
我有以下 JSON 数据结构:
var data = <%=request.getAttribute("jsondata")%>;
那是我的 data
:
[
{
"name": "User I/O"
},
{
"key": "61410583140000"
},
{
"value": "125"
},
{
"name": "User I/O"
},
{
"key": "61410583200000"
},
{
"value": "184"
},
...
]
现在我想要这样的东西:
[
//Squared brackets!!
[key,value]
[key,value]
[key,value]
]
正确的转换代码是什么?
var result = [];
for(var i in json_data)
result.push([i, json_data [i]]);
这应该可以正常工作
这就是你想要的 -
编辑: 删除了不必要的过滤器,reduce 负责忽略 "name" 个条目。
data.reduce(function(a,b){
if (b.key) {
a.push(b.key);
}
else if (b.value){
var key = a.pop();
a.push([key, b.value]);
}
return a;
}, []);
这将 return 这样的数组 -
[[61410583140000,125],[61410583200000,184]]
我有以下 JSON 数据结构:
var data = <%=request.getAttribute("jsondata")%>;
那是我的 data
:
[
{
"name": "User I/O"
},
{
"key": "61410583140000"
},
{
"value": "125"
},
{
"name": "User I/O"
},
{
"key": "61410583200000"
},
{
"value": "184"
},
...
]
现在我想要这样的东西:
[
//Squared brackets!!
[key,value]
[key,value]
[key,value]
]
正确的转换代码是什么?
var result = [];
for(var i in json_data)
result.push([i, json_data [i]]);
这应该可以正常工作
这就是你想要的 - 编辑: 删除了不必要的过滤器,reduce 负责忽略 "name" 个条目。
data.reduce(function(a,b){
if (b.key) {
a.push(b.key);
}
else if (b.value){
var key = a.pop();
a.push([key, b.value]);
}
return a;
}, []);
这将 return 这样的数组 -
[[61410583140000,125],[61410583200000,184]]