0
我在将数组转换为Json对象时遇到问题。我有一个包含json对象/对象的数组,当我将该数组转换为Json对象时,它将数组数据与生成json数组进行组合/连接。 让我们假设数组有两个json对象。当我将其转换成使用将数组转换成json对象?
var jsondata = JSON.stringify(array);
var jsn = JSON.parse(jsondata);
这里JSON对象是我的代码:
var array = new Array();
function addBatch(){
var data = $.toJSON($('#risk').serializeArray());
//data = [{"name":"user","value":"INCRE"},{"name":"period","value":"100"},{"name":"hori","value":"12"},{"name":"conf","value":"32"}]
var jsonData = JSON.stringify(data);
var json=JSON.parse(jsonData);
console.log('After Converting Json');
//store data in array
array.push(json);
}
// function that convert array into json:
function saveBatch(){
var jsonData = JSON.stringify(array);
json = JSON.parse(jsonData);
console.log("Batch: "+json);
}
它给我下面的输出:
[{"name":"user","value":"HIST"},{"name":"period","value":"12"},{"name":"hori","value":"32"},{"name":"conf","value":"12"}],[{"name":"user1","value":"INCRE"},{"name":"period","value":"12"},{"name":"hori","value":"32"},{"name":"conf","value":"12"}]
它应该是这样的:
[
[
{"name":"obj1"},{"value":"data"}
],
[
{"name":"obj2"},{"value":"data2"}
]
]
不知道为什么会发生这种情况。我在谷歌上搜索,但我没有找到任何方式,除了
var jsondata = JSON.stringify(array);
var jsn = JSON.parse(jsondata);
“json对象”并不意味着什么。 –
'JSON.stringify'应该不可能给出你输出的输出。请提供完整的测试案例(其中包含原始数据)。 – Quentin
你能告诉我们你的输入JSON和你如何做输出(这是意想不到的)?似乎工作。 – Bergi