-1
我已经从XML文档中提取了一些数据并将它们分配到了三个变量中。根元素名称,包含根子项的所有名称的数组,以及包含子子节点长度的第二个数组。我想这些变量转换成JSON对象以这种方式:将字符串和数组合并到JSON中
{ "root_name": {
"childName[0]": "lengthSubNodes[0]",
"childName[1]": "lengthSubNodes[1]",
"childName[2]": "lengthSubNodes[2]",
}
使用此项功能:
function XMLtoJSON(rootName,childNames,childNumbers){
var xmlObject = {}
xmlObject[rootName] = {};
for(var i = 0; i < childNames.length; i++){
xmlObject[rootName][childNames[i]] = childNumbers[i];
}
}
,一切工作正常。然而,当涉及到XML文档与很多根的孩子具有相同的名称和长度他们似乎只是一次这样的:
{ "catalog": {
"book": 6
}
,应该是这样的:
{ "catalog": {
"book":6,
"book":6,
"book":6
}
你知道如何解决它?
我不认为你可以在对象的相同父属性有冗余键 - 有没有办法可以给他们一个唯一的键值? – SachiDangalla
我们将需要知道*如何*你想要这个“固定”。正如SachiDangalla所说,你不能有重复的密钥。你想用额外的数据做什么?一种可能性是创建一个包含值的数组。但是,**你需要弄清楚你想要什么并告诉我们。 – Makyen
你的意思是“Javascript对象”而不是JSON? JSON是一个具有特定形式的字符串,但它仍然是一个字符串,不像您所描述的那样是一个复杂对象... –