js使用递归解析xml

2019-12-18,,,

xml结构:

复制代码 代码如下:
<RightMenuItems>
  <Item Code="New" Name="新建" GroupCode="Edit" GroupName="编辑"/>
  <Item Code="Open" Name="打开" GroupCode="Edit" GroupName="编辑">
    <item Code="Word" Name="Word文档" GroupCode="CommonDocument" GroupName="常规"/>
    <item Code="Excel" Name="Excel文档" GroupCode="CommonDocument" GroupName="常规"/>
    <item Code="CustomDocument" Name="自定义文档" GroupCode="CustomDocument" GroupName="自定义"/>
  </Item>
  <Item Code="Save" Name="保存" GroupCode="Edit" GroupName="编辑"/>
  <Item Code="Exit" Name="离开" GroupCode="Exit" GroupName="离开"/>
</RightMenuItems>

解析方法:

复制代码 代码如下:
$(xml).find("RightMenuItems").each(function () {
   this.data = Traversal($(this).children());
 });
var Traversal = function (nodes) {
        var itemList = new Array();
        $.each(nodes, function () {
            var entity = new RightMenuEntity();
            var obj = $(this);
            entity.Code = obj[0].getAttribute("Code");
            entity.Name = obj[0].getAttribute("Name");
            entity.GroupCode = obj[0].getAttribute("GroupCode");
            entity.GroupName = obj[0].getAttribute("GroupName");
            if (obj[0].hasChildNodes()) entity.ChildItems = Traversal(obj.children());
            itemList.push(entity);
        });
        return itemList;
    };

以上就是javascript使用递归解析XML的全部代码了,超级简洁,非常使用,给需要的小伙伴参考下。

您可能感兴趣的文章:

  • JS遍历数组和对象的区别及递归遍历对象、数组、属性的方法详解
  • 一个JavaScript递归实现反转数组字符串的实例
  • JavaScript实现数字数组按照倒序排列的方法
  • js中递归函数的使用介绍
  • JS 树形递归实例代码
  • js打印纸函数代码(递归)
  • JavaScript采用递归算法计算阶乘实例
  • JavaScript支持的最大递归调用次数分析
  • JS中递归函数
  • javascript高级编程之函数表达式 递归和闭包函数
  • JS基于递归算法实现1,2,3,4,5,6,7,8,9倒序放入数组中的方法

《js使用递归解析xml.doc》

下载本文的Word格式文档,以方便收藏与打印。