Heim  >  Artikel  >  Web-Frontend  >  JavaScript-Methode zum Konvertieren von XML in JSON_Javascript-Fähigkeiten

JavaScript-Methode zum Konvertieren von XML in JSON_Javascript-Fähigkeiten

WBOY
WBOYOriginal
2016-05-16 16:09:541453Durchsuche

Das Beispiel in diesem Artikel beschreibt, wie JavaScript XML in JSON konvertiert. Teilen Sie es als Referenz mit allen. Die spezifische Methode ist wie folgt:

1. Der JavaScript-Code lautet wie folgt:

Code kopieren Der Code lautet wie folgt:
// Ändert XML in JSON
Funktion xmlToJson(xml) {
// Erstelle das Rückgabeobjekt
var obj = {};
If (xml.nodeType == 1) { // element
               // Attribute machen
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;
}
// Kinder machen
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]) == "undefiniert") {
                      obj[nodeName] = xmlToJson(item);
              } sonst {
If (typeof(obj[nodeName].length) == "undefiniert") {
                      var old = obj[nodeName];
                                                                                                                                             obj[nodeName] = [];
                                                                                                                                    obj[nodeName].push(old);
                }
                     obj[nodeName].push(xmlToJson(item));
            }
}
}
Rückgabe obj;
};

2. XML-Code:
Code kopieren Der Code lautet wie folgt:


             <br>            <LINKSIN NUM="1102"/><br>            <SPEED TEXT="1421" PCT="51"/><br> </SD><br> <SD><br>             <POPULARITY URL="davidwalsh.name/" TEXT="7131"/><br>            <REACH RANK="5952"/><br>            <RANK DELTA="-1648"/><br> </SD><br> </ALEXA></div> <br> 3. JSON-Ergebnis: <br> <div class="codetitle"> <span><a style="CURSOR: pointer" data="35638" class="copybut" id="copybut35638" onclick="doCopy('code35638')"><u>Code kopieren</u></a></span> Der Code lautet wie folgt:</div> <div class="codebody" id="code35638">{<br>   „@attributes“: {<br>     AID: "=",<br>     ZUHAUSE: 0,<br>     URL: „davidwalsh.name/“,<br>     VER: „0,9“,<br>   },<br>   SD = [<br>     {<br>       „@attributes“: {<br>         FLAGGEN: "",<br>         HOST: „davidwalsh.name“,<br>         TITEL: A<br>       },<br>       LINKSIN: {<br>         „@attributes“: {<br>           NUM: 1102<br>         }<br>       },<br>       GESCHWINDIGKEIT: {<br>         „@attributes“: {<br>           PCT: 51,<br>           TEXT: 1421<br>         }<br>       },<br>       TITEL: {<br>         „@attributes“: {<br>           TEXT: „David Walsh Blog :: PHP, MySQL, CSS, Javascript, MooTools und alles andere“,<br>         }<br>       },<br>     },<br>     {<br>       BELIEBTHEIT: {<br>         „@attributes“: {<br>           TEXT: 7131,<br>           URL: „davidwalsh.name/“<br>         }<br>       },<br>       RANG: {<br>         „@attributes“: {<br>           DELTA: „-1648“<br>         }<br>       },<br>       REICHWEITE: {<br>         „@attributes“: {<br>           RANG = 5952<br>         }<br>       }<br>     }<br>   ]<br> }</div> <p>关于js操作xml感兴趣的朋友还可参考在线工具:</p> <p><a target="_blank" href="http://tools.jb51.net/code/xmljson">在线XML/JSON互相转换工具</a><br> </p> <p><a target="_blank" href="http://tools.jb51.net/code/xmlformat">在线XML格式化/压缩工具</a><br> </p> <p>希望本文所述对大家的javascript程序设计有所帮助.</p></div><div class="nphpQianMsg"><div class="clear"></div></div><div class="nphpQianSheng"><span>Stellungnahme:</span><div>Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn</div></div></div><div class="nphpSytBox"><span>Vorheriger Artikel:<a class="dBlack" title="JavaScript-Methoden und -Techniken zum Überprüfen, ob Popup-Fenster blockiert sind_Javascript-Techniken" href="http://m.php.cn/de/faq/8467.html">JavaScript-Methoden und -Techniken zum Überprüfen, ob Popup-Fenster blockiert sind_Javascript-Techniken</a></span><span>Nächster Artikel:<a class="dBlack" title="JavaScript-Methoden und -Techniken zum Überprüfen, ob Popup-Fenster blockiert sind_Javascript-Techniken" href="http://m.php.cn/de/faq/8469.html">JavaScript-Methoden und -Techniken zum Überprüfen, ob Popup-Fenster blockiert sind_Javascript-Techniken</a></span></div><div class="nphpSytBox2"><div class="nphpZbktTitle"><h2>In Verbindung stehende Artikel</h2><em><a href="http://m.php.cn/de/article.html" class="bBlack"><i>Mehr sehen</i><b></b></a></em><div class="clear"></div></div><ul class="nphpXgwzList"><li><b></b><a href="http://m.php.cn/de/faq/1609.html" title="Eine eingehende Analyse der Bootstrap-Listengruppenkomponente" class="aBlack">Eine eingehende Analyse der Bootstrap-Listengruppenkomponente</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/de/faq/1640.html" title="Detaillierte Erläuterung des JavaScript-Funktions-Curryings" class="aBlack">Detaillierte Erläuterung des JavaScript-Funktions-Curryings</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/de/faq/1949.html" title="Vollständiges Beispiel für die Generierung von JS-Passwörtern und die Erkennung der Stärke (mit Download des Demo-Quellcodes)" class="aBlack">Vollständiges Beispiel für die Generierung von JS-Passwörtern und die Erkennung der Stärke (mit Download des Demo-Quellcodes)</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/de/faq/2248.html" title="Angularjs integriert WeChat UI (weui)" class="aBlack">Angularjs integriert WeChat UI (weui)</a><div class="clear"></div></li><li><b></b><a href="http://m.php.cn/de/faq/2351.html" title="Wie man mit JavaScript schnell zwischen traditionellem Chinesisch und vereinfachtem Chinesisch wechselt und wie Websites den Wechsel zwischen vereinfachtem und traditionellem Chinesisch unterstützen – Javascript-Kenntnisse" class="aBlack">Wie man mit JavaScript schnell zwischen traditionellem Chinesisch und vereinfachtem Chinesisch wechselt und wie Websites den Wechsel zwischen vereinfachtem und traditionellem Chinesisch unterstützen – Javascript-Kenntnisse</a><div class="clear"></div></li></ul></div></div><div class="nphpFoot"><div class="nphpFootBg"><ul class="nphpFootMenu"><li><a href="http://m.php.cn/de/"><b class="icon1"></b><p>Heim</p></a></li><li><a href="http://m.php.cn/de/course.html"><b class="icon2"></b><p>Kurs</p></a></li><li><a href="http://m.php.cn/de/wenda.html"><b class="icon4"></b><p>Fragen und Antworten</p></a></li><li><a href="http://m.php.cn/de/login"><b class="icon5"></b><p>Mein</p></a></li><div class="clear"></div></ul></div></div><div class="nphpYouBox" style="display: none;"><div class="nphpYouBg"><div class="nphpYouTitle"><span onclick="$('.nphpYouBox').hide()"></span><a href="http://m.php.cn/de/"></a><div class="clear"></div></div><ul class="nphpYouList"><li><a href="http://m.php.cn/de/"><b class="icon1"></b><span>Heim</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/de/course.html"><b class="icon2"></b><span>Kurs</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/de/article.html"><b class="icon3"></b><span>Artikel</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/de/wenda.html"><b class="icon4"></b><span>Fragen und Antworten</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/de/dic.html"><b class="icon6"></b><span>Wörterbuch</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/de/course/type/99.html"><b class="icon7"></b><span>Handbuch</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/de/xiazai/"><b class="icon8"></b><span>Herunterladen</span><div class="clear"></div></a></li><li><a href="http://m.php.cn/de/faq/zt" title="Thema"><b class="icon12"></b><span>Thema</span><div class="clear"></div></a></li><div class="clear"></div></ul></div></div><div class="nphpDing" style="display: none;"><div class="nphpDinglogo"><a href="http://m.php.cn/de/"></a></div><div class="nphpNavIn1"><div class="swiper-container nphpNavSwiper1"><div class="swiper-wrapper"><div class="swiper-slide"><a href="http://m.php.cn/de/" >Heim</a></div><div class="swiper-slide"><a href="http://m.php.cn/de/article.html" class="hover">Artikel</a></div><div class="swiper-slide"><a href="http://m.php.cn/de/wenda.html" >Fragen und Antworten</a></div><div class="swiper-slide"><a href="http://m.php.cn/de/course.html" >Kurs</a></div><div class="swiper-slide"><a href="http://m.php.cn/de/faq/zt" >Thema</a></div><div class="swiper-slide"><a href="http://m.php.cn/de/xiazai" >Herunterladen</a></div><div class="swiper-slide"><a href="http://m.php.cn/de/game" >Spiel</a></div><div class="swiper-slide"><a href="http://m.php.cn/de/dic.html" >Wörterbuch</a></div><div class="clear"></div></div></div><div class="langadivs" ><a href="javascript:;" class="bg4 bglanguage"></a><div class="langadiv" ><a onclick="javascript:setlang('zh-cn');" class="language course-right-orders chooselan " href="javascript:;"><span>简体中文</span><span>(ZH-CN)</span></a><a onclick="javascript:setlang('en');" class="language course-right-orders chooselan " href="javascript:;"><span>English</span><span>(EN)</span></a><a onclick="javascript:setlang('zh-tw');" class="language course-right-orders chooselan " href="javascript:;"><span>繁体中文</span><span>(ZH-TW)</span></a><a onclick="javascript:setlang('ja');" class="language course-right-orders chooselan " href="javascript:;"><span>日本語</span><span>(JA)</span></a><a onclick="javascript:setlang('ko');" class="language course-right-orders chooselan " href="javascript:;"><span>한국어</span><span>(KO)</span></a><a onclick="javascript:setlang('ms');" class="language course-right-orders chooselan " href="javascript:;"><span>Melayu</span><span>(MS)</span></a><a onclick="javascript:setlang('fr');" class="language course-right-orders chooselan " href="javascript:;"><span>Français</span><span>(FR)</span></a><a onclick="javascript:;" class="language course-right-orders chooselan chooselanguage" href="javascript:;"><span>Deutsch</span><span>(DE)</span></a></div></div><script> var swiper = new Swiper('.nphpNavSwiper1', { slidesPerView : 'auto', observer: true,//修改swiper自己或子元素时,自动初始化swiper observeParents: true,//修改swiper的父元素时,自动初始化swiper }); </script></div></div><!--顶部导航 end--><script>isLogin = 0;</script><script type="text/javascript" src="/static/layui/layui.js"></script><script type="text/javascript" src="/static/js/global.js?4.9.47"></script></div><script src="https://vdse.bdstatic.com//search-video.v1.min.js"></script><link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css' type='text/css' media='all'/><script type='text/javascript' src='/static/js/viewer.min.js?1'></script><script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script><script>jQuery.fn.wait = function (func, times, interval) { var _times = times || -1, //100次 _interval = interval || 20, //20毫秒每次 _self = this, _selector = this.selector, //选择器 _iIntervalID; //定时器id if( this.length ){ //如果已经获取到了,就直接执行函数 func && func.call(this); } else { _iIntervalID = setInterval(function() { if(!_times) { //是0就退出 clearInterval(_iIntervalID); } _times <= 0 || _times--; //如果是正数就 -- _self = $(_selector); //再次选择 if( _self.length ) { //判断是否取到 func && func.call(_self); clearInterval(_iIntervalID); } }, _interval); } return this; } $("table.syntaxhighlighter").wait(function() { $('table.syntaxhighlighter').append("<p class='cnblogs_code_footer'><span class='cnblogs_code_footer_icon'></span></p>"); }); $(document).on("click", ".cnblogs_code_footer",function(){ $(this).parents('table.syntaxhighlighter').css('display','inline-table');$(this).hide(); }); $('.nphpQianCont').viewer({navbar:true,title:false,toolbar:false,movable:false,viewed:function(){$('img').click(function(){$('.viewer-close').trigger('click');});}}); </script></body></html>