来源:未知 时间:2022-04-29 10:09 作者:小飞侠 阅读:次
[导读] xml字符串转xml对象,这里主要用到了js原生api能力, DOMParser 此API兼容到IE9,IE9以下还只能用IE的解决办法,如 ActiveXObject.loadXML方法。 /***xml字符串转换xml对象数据*@param{Object}xmlStr*/func...
|
xml字符串转xml对象,这里主要用到了js原生api能力,DOMParser 此API兼容到IE9,IE9以下还只能用IE的解决办法,如 ActiveXObject.loadXML方法。 /**
* xml字符串转换xml对象数据
* @param {Object} xmlStr
*/
function xmlStr2XmlObj(xmlStr) {
var xmlObj = {};
if (document.all) {
var xmlDom = new ActiveXObject("Microsoft.XMLDOM");
xmlDom.loadXML(xmlStr);
xmlObj = xmlDom;
} else {
xmlObj = new DOMParser().parseFromString(xmlStr, "text/xml");
}
return xmlObj;
}
/**
* xml字符串转换json数据
* @param {Object} xml
*/
function xmlObj2json(xml) {
var xmlObj = xmlStr2XmlObj(xml);
var jsonObj = {};
if (xmlObj.childNodes.length > 0) {
jsonObj = xml2json(xmlObj);
}
return jsonObj;
}
/**
* xml转换json数据
* @param {Object} xml
*/
function xml2json(xml) {
try {
var obj = {};
if (xml.children.length > 0) {
for (var i = 0; i < xml.children.length; i++) {
var item = xml.children.item(i);
var nodeName = item.nodeName;
if (typeof(obj[nodeName]) == "undefined") {
obj[nodeName] = xml2json(item);
} else {
if (typeof(obj[nodeName].push) == "undefined") {
var old = obj[nodeName];
obj[nodeName] = [];
obj[nodeName].push(old);
}
obj[nodeName].push(xml2json(item));
}
}
} else {
obj = xml.textContent;
}
return obj;
} catch (e) {
console.log(e.message);
}
}
export {
xmlStr2XmlObj,xmlObj2json,xml2json
}以上就是js把xml字符串转为xml对象_xml对象和xml字符串互转全部内容,感谢大家支持自学php网。 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com