xml转json的js代码


Posted in Javascript onAugust 28, 2012
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; 
};
Javascript 相关文章推荐
清空上传控件input file的值
Jul 03 Javascript
JS简单实现登陆验证附效果图
Nov 19 Javascript
关于JavaScript对象的动态选择及遍历对象
Mar 10 Javascript
javascript中的循环语句for语句深入理解
Apr 04 Javascript
js实现网页自动刷新可制作节日倒计时效果
May 27 Javascript
点击表单提交时出现jQuery没有权限的解决方法
Jul 23 Javascript
jQuery代码实现发展历程时间轴特效
Jul 30 Javascript
JavaScript实现点击按钮就复制当前网址
Dec 14 Javascript
网页挂马方式整理及详细介绍
Nov 03 Javascript
BootStrap实现响应式布局导航栏折叠隐藏效果(在小屏幕、手机屏幕浏览时自动折叠隐藏)
Nov 30 Javascript
Vue应用部署到服务器的正确方式
Jul 15 Javascript
解决vue+ element ui 表单验证有值但验证失败问题
Jan 16 Javascript
基于jquery创建的一个图片、视频缓冲的效果样式插件
Aug 28 #Javascript
javascript 判断中文字符长度的函数代码
Aug 27 #Javascript
Jquery 数据选择插件Pickerbox使用介绍
Aug 24 #Javascript
javascript数字格式化通用类 accounting.js使用
Aug 24 #Javascript
jquery动画4.升级版遮罩效果的图片走廊--带自动运行效果
Aug 24 #Javascript
jquery动画3.创建一个带遮罩效果的图片走廊
Aug 24 #Javascript
jquery动画2.元素坐标动画效果(创建一个图片走廊)
Aug 24 #Javascript
You might like
ThinkPHP5+UEditor图片上传到阿里云对象存储OSS功能示例
2019/08/05 PHP
xmlHTTP实例
2006/10/24 Javascript
优化Node.js Web应用运行速度的10个技巧
2014/09/03 Javascript
jQuery中:button选择器用法实例
2015/01/04 Javascript
jQuery实现的图片分组切换焦点图插件
2015/01/06 Javascript
javascript框架设计之种子模块
2015/06/23 Javascript
jquery分页插件jquery.pagination.js实现无刷新分页
2016/04/01 Javascript
利用fecha进行JS日期处理
2016/11/21 Javascript
完美解决JS文件页面加载时的阻塞问题
2016/12/18 Javascript
快速掌握jQuery插件开发
2017/01/19 Javascript
微信小程序实战之自定义toast(6)
2017/04/18 Javascript
信息滚动效果的实例讲解
2017/09/18 Javascript
浅谈Vuex的状态管理(全家桶)
2017/11/04 Javascript
jQuery实现标签子元素的添加和赋值方法
2018/02/24 jQuery
react-native使用leanclound消息推送的方法
2018/08/06 Javascript
layui实现文件或图片上传记录
2018/08/28 Javascript
深入理解使用Vue实现Context-Menu的思考与总结
2019/03/09 Javascript
vue实现跳转接口push 转场动画示例
2019/11/01 Javascript
解决Angularjs异步操作后台请求用$q.all排列先后顺序问题
2019/11/29 Javascript
Vue+webpack实现懒加载过程解析
2020/02/17 Javascript
[54:28]EG vs OG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python实现获取网站PR及百度权重
2015/01/21 Python
Python实现把数字转换成中文
2015/06/29 Python
python简单分割文件的方法
2015/07/30 Python
python中datetime模块中strftime/strptime函数的使用
2018/07/03 Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
2019/04/01 Python
python2.7 安装pip的方法步骤(管用)
2019/05/05 Python
Python日志logging模块功能与用法详解
2020/04/09 Python
python 使用raw socket进行TCP SYN扫描实例
2020/05/05 Python
CSS图片翻转动画技术详解(IE也实现了)
2014/04/03 HTML / CSS
公共事业管理本科生求职信
2013/10/07 职场文书
优秀的毕业生的自我评价
2013/12/12 职场文书
中学生民族团结演讲稿
2014/08/27 职场文书
北京导游词
2015/02/12 职场文书
Python使用scapy模块发包收包
2021/05/07 Python
MySQL 时间类型的选择
2021/06/05 MySQL