JS操作xml對(duì)象轉(zhuǎn)換為Json對(duì)象示例
最近在處理一個(gè)前端功能的時(shí)候,遇到了一個(gè)問題,原本的系統(tǒng)是使用的xml來存儲(chǔ)數(shù)據(jù)的,而在新的系統(tǒng)上,想要轉(zhuǎn)換為json對(duì)象存儲(chǔ),于是就考慮到直接將xml對(duì)象轉(zhuǎn)換為json對(duì)象。
目前為止,通用的轉(zhuǎn)換方式我還沒有找到,只有根據(jù)已知的xml對(duì)象結(jié)構(gòu)來使用for循環(huán)不斷地賦值。
var xml = ······;//獲取xml對(duì)象 var objList = []; for(var i = 0;i<xml.childNodes.length;i++){ var obj = {}; obj.attribute1 = xml.getAttribute("attribute1");//獲取節(jié)點(diǎn)屬性 obj.attribute2 = xml.getAttribute("attribute2"); obj.children = []; for(var x=0;x<xml.childNodes[i].childNodes.length;x++){ var element = xml.childNodes[i].childNodes[x]; var child = {}; child.attribute1 = element.getAttribute("attribute1"); child.attribute2 = element.getAttribute("attribute2"); obj.children.push(child); } objList.push(obj); }
for循環(huán)可以繼續(xù)嵌套下去,每一個(gè)新的json對(duì)象的屬性都可以自定義,但是在getAttribute()方法中一定要填寫自己所需要的存在的屬性。
這樣的方法看起來比較蠢,暫時(shí)先這樣用吧,等到我想到了更好的方法之后在考慮替換。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JS實(shí)現(xiàn)合并json對(duì)象的方法
- JSON對(duì)象轉(zhuǎn)化為字符串詳解
- javascript中json對(duì)象json數(shù)組json字符串互轉(zhuǎn)及取值方法
- javascript遍歷json對(duì)象的key和任意js對(duì)象屬性實(shí)例
- JSON字符串和JSON對(duì)象相互轉(zhuǎn)化實(shí)例詳解
- JSON--List集合轉(zhuǎn)換成JSON對(duì)象詳解
- js 動(dòng)態(tài)生成json對(duì)象、時(shí)時(shí)更新json對(duì)象的方法
- JS判斷是否為JSON對(duì)象及是否存在某字段的方法(推薦)
- JSON對(duì)象 詳解及實(shí)例代碼
- Json對(duì)象與Json字符串互轉(zhuǎn)(4種轉(zhuǎn)換方式)
- JavaScript簡(jiǎn)單實(shí)現(xiàn)合并兩個(gè)Json對(duì)象的方法示例
相關(guān)文章
獲取當(dāng)前點(diǎn)擊按鈕的id用this.id實(shí)現(xiàn)
這篇文章主要介紹了獲取當(dāng)前點(diǎn)擊按鈕的id的方法,,需要的朋友可以參考下2014-03-03javascript ready和load事件的區(qū)別示例介紹
ready是在DOM加載完成就觸發(fā);load是在加載完所有頁(yè)面內(nèi)容才會(huì)觸發(fā),下為大家簡(jiǎn)要介紹下,不知道的朋友可以參考下2013-08-08判斷div滑動(dòng)到底部的scroll實(shí)例代碼
下面小編就就為大家分享一篇判斷div滑動(dòng)到底部的scroll實(shí)例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2017-11-11