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 相关文章推荐
greybox——不开新窗口看新的网页
Feb 20 Javascript
jquery radio 操作代码
Mar 16 Javascript
关于jQuery参考实例2.0 用jQuery选择元素
Apr 07 Javascript
js获取鼠标位置实例详解
Dec 09 Javascript
js插件dropload上拉下滑加载数据实例解析
Jul 27 Javascript
AngularJS实践之使用NgModelController进行数据绑定
Oct 08 Javascript
js 客户端打印html 并且去掉页眉、页脚的实例
Nov 03 Javascript
JavaScript中利用Array filter() 方法压缩稀疏数组
Feb 24 Javascript
jQuery实现DIV响应鼠标滑过由下向上展开效果示例【测试可用】
Apr 26 jQuery
微信小程序实现页面浮动导航
Jan 28 Javascript
微信小程序封装的HTTP请求示例【附升级版】
May 11 Javascript
JavaScript实现五子棋游戏的方法详解
Jul 08 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和ACCESS写聊天室(二)
2006/10/09 PHP
PHP 使用memcached简单示例分享
2015/03/05 PHP
CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
2016/05/18 PHP
PHP基于堆栈实现的高级计算器功能示例
2017/09/15 PHP
PHP使用PDO访问oracle数据库的步骤详解
2017/09/29 PHP
PHP手机短信验证码实现流程详解
2018/05/17 PHP
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
2007/07/11 Javascript
javascript function调用时的参数检测常用办法
2010/02/26 Javascript
jqPlot 基于jquery的画图插件
2011/04/26 Javascript
js渐变显示渐变消失示例代码
2013/08/01 Javascript
使用jquery解析XML示例代码
2014/09/05 Javascript
JavaScript中的普通函数与构造函数比较
2015/04/07 Javascript
Node.js中使用socket创建私聊和公聊聊天室
2015/11/19 Javascript
JS通过Cookie判断页面是否为首次打开
2016/02/05 Javascript
node puppeteer(headless chrome)实现网站登录
2018/05/09 Javascript
webpack打包非模块化js的方法
2018/10/24 Javascript
详解jQuery中的prop()使用方法
2020/01/05 jQuery
JavaScript this使用方法图解
2020/02/04 Javascript
Python中文件操作简明介绍
2015/04/13 Python
Django中使用group_by的方法
2015/05/26 Python
python实现爬虫统计学校BBS男女比例之数据处理(三)
2015/12/31 Python
运用TensorFlow进行简单实现线性回归、梯度下降示例
2018/03/05 Python
Python装饰器语法糖
2019/01/02 Python
基于python的ini配置文件操作工具类
2019/04/24 Python
Python实现二叉搜索树BST的方法示例
2019/07/30 Python
Python操作SQLite/MySQL/LMDB数据库的方法
2019/11/07 Python
Tensorflow:转置函数 transpose的使用详解
2020/02/11 Python
canvas绘制太极图的实现示例
2020/04/29 HTML / CSS
Linux内核产生并发的原因
2016/11/08 面试题
如何整合JQuery和Prototype
2014/01/31 面试题
档案室主任岗位职责
2014/02/12 职场文书
住院医师规范化培训实施方案
2014/06/12 职场文书
企业贷款委托书格式
2014/09/12 职场文书
单位租车协议书
2015/01/29 职场文书
2015年党风廉政建设目标责任书
2015/05/08 职场文书
golang在GRPC中设置client的超时时间
2021/04/27 Golang