JS操作xml对象转换为Json对象示例


Posted in Javascript onMarch 25, 2017

最近在处理一个前端功能的时候,遇到了一个问题,原本的系统是使用的xml来存储数据的,而在新的系统上,想要转换为json对象存储,于是就考虑到直接将xml对象转换为json对象。

目前为止,通用的转换方式我还没有找到,只有根据已知的xml对象结构来使用for循环不断地赋值。

var xml = ······;//获取xml对象
var objList = [];
for(var i = 0;i<xml.childNodes.length;i++){
  var obj = {};
  obj.attribute1 = xml.getAttribute("attribute1");//获取节点属性
  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循环可以继续嵌套下去,每一个新的json对象的属性都可以自定义,但是在getAttribute()方法中一定要填写自己所需要的存在的属性。

这样的方法看起来比较蠢,暂时先这样用吧,等到我想到了更好的方法之后在考虑替换。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript日期对象的dateAdd与dateDiff方法
Nov 18 Javascript
js 一个关于图片onload加载的事
Nov 10 Javascript
setInterval()和setTimeout()的用法和区别示例介绍
Nov 17 Javascript
Javascript学习笔记之 函数篇(二) : this 的工作机制
Jun 24 Javascript
JavaScript实现跑马灯抽奖活动实例代码解析与优化(一)
Feb 16 Javascript
jQuery学习心得总结(必看篇)
Jun 10 Javascript
Vue.js 插件开发详解
Mar 29 Javascript
基于Two.js实现星球环绕动画效果的示例
Nov 06 Javascript
vue-router+nginx 非根路径配置方法
Jun 30 Javascript
vue click.stop阻止点击事件继续传播的方法
Sep 04 Javascript
图片文字识别(OCR)插件Ocrad.js教程
Nov 26 Javascript
JavaScript console的使用方法实例分析
Apr 28 Javascript
javascript实现的图片预览功能
Mar 25 #Javascript
JS控件bootstrap suggest plugin使用方法详解
Mar 25 #Javascript
bootstrap table动态加载数据示例代码
Mar 25 #Javascript
JS控件bootstrap datepicker使用方法详解
Mar 25 #Javascript
基于bootstrap按钮式下拉菜单组件的搜索建议插件
Mar 25 #Javascript
JS中showModalDialog关闭子窗口刷新主窗口用法详解
Mar 25 #Javascript
bootstrap suggest搜索建议插件使用详解
Mar 25 #Javascript
You might like
PHP中全局变量global和$GLOBALS[]的区别分析
2012/08/06 PHP
PHP对文件夹递归执行chmod命令的方法
2015/06/19 PHP
ECSHOP在PHP5.5及高版本上报错的解决方法
2015/08/31 PHP
php使用高斯算法实现图片的模糊处理功能示例
2016/11/11 PHP
xml 封装与解析(javascript和C#中)
2009/07/26 Javascript
extJs 常用到的增,删,改,查操作代码
2009/12/28 Javascript
js判断IE浏览器版本过低示例代码
2013/11/22 Javascript
jQuery+PHP实现动态数字展示特效
2015/03/14 Javascript
js实现简单锁屏功能实例
2015/05/27 Javascript
对于jQuery性能的一些优化建议
2015/08/13 Javascript
jQuery实现隔行变色的方法分析(对比原生JS)
2016/11/18 Javascript
jquery 追加元素append、prepend、before、after用法与区别分析
2016/12/02 Javascript
js获取当前周、上一周、下一周日期
2017/03/19 Javascript
vue引入新版 vue-awesome-swiper插件填坑问题
2018/01/25 Javascript
详解vue-router数据加载与缓存使用总结
2018/10/29 Javascript
Vue父组件监听子组件生命周期
2020/09/03 Javascript
[02:44]DOTA2英雄基础教程 魅惑魔女
2014/01/07 DOTA
一个计算身份证号码校验位的Python小程序
2014/08/15 Python
python实现单线程多任务非阻塞TCP服务端
2017/06/13 Python
python分布式环境下的限流器的示例
2017/10/26 Python
解决python3 网络请求路径包含中文的问题
2018/05/10 Python
Python爬虫信息输入及页面的切换方法
2018/05/11 Python
python+POP3实现批量下载邮件附件
2018/06/19 Python
Python中函数参数调用方式分析
2018/08/09 Python
Python3将jpg转为pdf文件的方法示例
2019/12/13 Python
Python如何基于Tesseract实现识别文字功能
2020/06/05 Python
W3C公布最新的HTML5标准草案
2008/10/17 HTML / CSS
夜大毕业自我鉴定
2013/10/11 职场文书
检察官就职演讲稿
2014/01/13 职场文书
大学活动总结格式
2014/04/29 职场文书
酒店员工培训方案
2014/06/02 职场文书
真诚的求职信
2014/07/04 职场文书
教师群众路线学习心得体会
2014/11/04 职场文书
2015年员工试用期工作总结
2014/12/12 职场文书
拖欠货款起诉状
2015/05/20 职场文书
《社戏》教学反思
2016/02/22 职场文书