多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > web前端 > jscript > 使用javascript將XML解析為JSON

使用javascript將XML解析為JSON

來(lái)源:程序員人生   發(fā)布時(shí)間:2014-03-21 22:14:54 閱讀次數(shù):4473次

今天看了David Walsh一篇把XML格式轉(zhuǎn)換為JSON格式的文章,感覺(jué)不錯(cuò),簡(jiǎn)單的轉(zhuǎn)載了過(guò)來(lái)。

下面是神奇的XML轉(zhuǎn)JSON的javascript代碼:

// Changes XML to JSON
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;
};

下面的XML為:

<ALEXA VER="0.9" URL="davidwalsh.name/" HOME="0" AID="=">
<SD TITLE="A" FLAGS="" HOST="davidwalsh.name">
<TITLE TEXT="David Walsh Blog :: PHP, MySQL, CSS, Javascript, MooTools, and Everything Else"/>
<LINKSIN NUM="1102"/>
<SPEED TEXT="1421" PCT="51"/>
</SD>
<SD>
<POPULARITY URL="davidwalsh.name/" TEXT="7131"/>
<REACH RANK="5952"/>
<RANK DELTA="-1648"/>
</SD>
</ALEXA>

通過(guò)上面的函數(shù)轉(zhuǎn)換后的JSON為:

{
"@attributes": {
AID: "=",
HOME: 0,
URL: "davidwalsh.name/",
VER: "0.9",
},
SD = [
{
"@attributes": {
FLAGS: "",
HOST: "davidwalsh.name",
TITLE: A
},
LINKSIN: {
"@attributes": {
NUM: 1102
}
},
SPEED: {
"@attributes": {
PCT: 51,
TEXT: 1421
}
},
TITLE: {
"@attributes": {
TEXT: "David Walsh Blog :: PHP, MySQL, CSS, Javascript, MooTools, and Everything Else",
}
},
},
{
POPULARITY: {
"@attributes": {
TEXT: 7131,
URL: "davidwalsh.name/"
}
},
RANK: {
"@attributes": {
DELTA: "-1648"
}
},
REACH: {
"@attributes": {
RANK = 5952
}
}
}
]
}

原文地址:Convert XML to JSON with JavaScript

生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 福利在线看| 亚洲国产欧美精品 | 一本到在线 | 看全色黄大色大片免费久久久 | 欧美xxxx视频 | 欧洲免费无线码一二区 | 麻豆久久精品免费看国产 | 91精品欧美综合在线观看 | 亚州春色校园另类 | 精品福利一区二区三区免费视频 | 精品久久久久亚洲 | 欧美三级午夜伦理片 | 最近中文字幕国语免费高清6 | 国产日韩高清一区二区三区 | 毛片国产 | 最近中文字幕国语完整在线5 | 波多野结衣91 | 免费精品久久久视频 | 亚洲乱码在线观看 | 国产一区二区三区在线 | 国产亚洲精品久久 | 欧美一区二区三区四区视频 | 国产91在线九色 | 免费看国产精品久久久久 | 白浆都出来了视频国产精品 | 一级欧美激情毛片 | 一区二区成人国产精品 | 亚洲人成网站在线播放观看 | 国产欧美日韩综合一区二区三区 | 亚洲精品综合一区二区三区 | 成人精品久久 | 亚洲网站在线播放 | 午夜看片网| 久99久爱精品免费观看视频 | 欧美亚洲h在线一区二区 | 国产精品久久在线观看 | 久久久精品国产 | 亚洲成人免费看 | 最近最新中文字幕大全高清6 | 亚洲国产成人精品不卡青青草原 | 日本在线一本 |