使用 E4x 和 javascript 将 JSON 转换为 XML



我需要使用 E4x 和 javascript 将 JSON 转换为 XML,其中我的 XML 属性是从 JSON 键中挑选的。例: var JSONstr = {"data": {"firstName": "ABC","lastName": "XYZ","email": "test@test.com"}}; 和 XML 输出应为 。

我的代码片段如下:

var xmlProfile = new XML('<root/>');
var keyAttr = Object.keys(JSONstr.data);
var xml = convertDataToXml(dataJSON, xmlProfile, keyAttr);
function convertDataToXml(data, xml,keyAttr)
{ var attr;
for(key in keyAttr){
if(data.hasOwnProperty(key)) {
if (data[key] instanceof Array) {
// create node
attr = keyAttr[key];
xml.appendChild(<{attr}/>);
convertDataToXml(data[key], xml[attr],attr[key]);
}
else {
attr = keyAttr[key];
if (attr != undefined){
var attrib="@"+attr;
xml.{attrib} = data.keyAttr[key]//data.attr;
}
}
}
return xml;
}
}

第 xml 行。{attrib} = data.keyAttr[key]//data.attr;似乎不起作用。如何动态创建属性?欢迎任何意见。

行 xml.{attrib} = data.keyAttr[key]//data.attr;似乎不起作用。如何动态创建属性?

xml.{attrib}更改为xml[attrib]

最新更新