Copy Code code as follows:
function Xmltojson (XML) {
Create the Return object
var obj = {};
if (Xml.nodetype = = 1) {//Element
Do attributes
if (Xml.attributes.length > 0) {
obj["@attributes"] = {};
for (var j = 0; J < Xml.attributes.length; J + +) {
var attribute = Xml.attributes.item (j);
obj["@attributes"][attribute.nodename] = Attribute.nodevalue;
}
}
else if (Xml.nodetype = 3) {//text
obj = Xml.nodevalue;
}
Do children
if (Xml.haschildnodes ()) {
for (var i = 0; i < xml.childNodes.length; i++) {
var item = Xml.childNodes.item (i);
var nodename = Item.nodename;
if (typeof (Obj[nodename]) = = "undefined") {
Obj[nodename] = Xmltojson (item);
} else {
if (typeof (obj[nodename].length) = = "undefined") {
var old = Obj[nodename];
Obj[nodename] = [];
Obj[nodename].push (old);
}
Obj[nodename].push (Xmltojson (item));
}
}
}
return obj;
};