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 相关文章推荐
原生javascript实现图片轮播效果代码
Sep 03 Javascript
Javascript 按位左移运算符使用介绍(
Feb 04 Javascript
JavaScript中判断页面关闭、页面刷新的实现代码
Aug 27 Javascript
使用node.js 获取客户端信息代码分享
Nov 26 Javascript
jquery实现鼠标滑过小图时显示大图的方法
Jan 14 Javascript
DOM基础教程之使用DOM设置文本框
Jan 20 Javascript
详解JS获取HTML DOM元素的8种方法
Jun 17 Javascript
js 索引下标之li集合绑定点击事件
Jan 12 Javascript
基于datepicker定义自己的angular时间组件的示例
Mar 14 Javascript
mpvue 页面预加载新增preLoad生命周期的两种方式
Oct 17 Javascript
javascript中的相等操作符(==与===区别)
Dec 21 Javascript
vue实现登录拦截
Jun 29 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
AJAX的跨域与JSONP(为文章自动添加短址的功能)
2010/01/17 Javascript
JS实现点击图片在当前页面放大并可关闭的漂亮效果
2013/10/18 Javascript
jQuery实现单击按钮遮罩弹出对话框(仿天猫的删除对话框)
2014/04/10 Javascript
JavaScript使用HTML5的window.postMessage实现跨域通信例子
2014/04/11 Javascript
jquery实现滑动特效代码
2015/08/10 Javascript
jQuery代码实现表格中点击相应行变色功能
2016/05/09 Javascript
微信小程序 canvas API详解及实例代码
2016/10/08 Javascript
video.js使用改变ui过程
2017/03/05 Javascript
jQuery选择器特殊字符与属性空格问题
2017/08/14 jQuery
js+html获取系统当前时间
2017/11/10 Javascript
Vue2.0 事件的广播与接收(观察者模式)
2018/03/14 Javascript
JS模拟实现哈希表及应用详解
2018/05/04 Javascript
JSON数据中存在单个转义字符“\”的处理方法
2018/07/11 Javascript
Vue源码解读之Component组件注册的实现
2018/08/24 Javascript
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
2018/09/04 Javascript
Element输入框带历史查询记录的实现示例
2019/01/15 Javascript
JS前后端实现身份证号验证代码解析
2020/07/23 Javascript
JavaScript缓动动画函数的封装方法
2020/11/25 Javascript
在Python中的Django框架中进行字符串翻译
2015/07/27 Python
详解Python进程间通信之命名管道
2017/08/28 Python
python绘制简单折线图代码示例
2017/12/19 Python
详解Python之unittest单元测试代码
2018/01/24 Python
用Python分析3天破10亿的《我不是药神》到底神在哪?
2018/07/12 Python
解决项目pycharm能运行,在终端却无法运行的问题
2019/01/19 Python
python计算导数并绘图的实例
2020/02/29 Python
Python gevent协程切换实现详解
2020/09/14 Python
python爬取抖音视频的实例分析
2021/01/19 Python
高性能钓鱼服装:Huk Gear
2019/02/20 全球购物
金士达面试非笔试
2012/03/14 面试题
师范应届生语文教师求职信
2013/10/29 职场文书
通用求职信范文模板分享
2013/12/27 职场文书
让世界充满爱演讲稿
2014/05/24 职场文书
专题组织生活会方案
2014/06/15 职场文书
CSS完成视差滚动效果
2021/04/27 HTML / CSS
用Java实现简单计算器功能
2021/07/21 Java/Android
Linux中文件的基本属性介绍
2022/06/01 Servers