Отказ от ответственности: я написал fast-xml-parser
Fast XML Parser может помочь преобразовать XML в JSON и наоборот. Вот пример;
var options = {
attributeNamePrefix : "@_",
attrNodeName: "attr", //default is 'false'
textNodeName : "#text",
ignoreAttributes : true,
ignoreNameSpace : false,
allowBooleanAttributes : false,
parseNodeValue : true,
parseAttributeValue : false,
trimValues: true,
decodeHTMLchar: false,
cdataTagName: "__cdata", //default is 'false'
cdataPositionChar: "\\c",
};
if(parser.validate(xmlData)=== true){//optional
var jsonObj = parser.parse(xmlData,options);
}
Если вы хотите, чтобы разобрать JSON или объект JS в XML, то
//default options need not to set
var defaultOptions = {
attributeNamePrefix : "@_",
attrNodeName: "@", //default is false
textNodeName : "#text",
ignoreAttributes : true,
encodeHTMLchar: false,
cdataTagName: "__cdata", //default is false
cdataPositionChar: "\\c",
format: false,
indentBy: " ",
supressEmptyNode: false
};
var parser = new parser.j2xParser(defaultOptions);
var xml = parser.parse(json_or_js_obj);
Объясните несоответствия, пожалуйста –
В частности, должен был сделать с преобразованием JSON массива с помощью всего 1 элемента XML. Когда вы преобразовали его обратно в JSON, вместо массива из 1 элемента, он создал литерал объекта. Я работал над ним, проверяя тип с $ .isArray() и обертывая его в массив if! $. IsArray(). –
xml2json - http://www.fyneworks.com/jquery/xml-to-json/ - breaks throws 500 от 15.02.2012 14:25 AEST – ysrb