美文网首页
js递归循环数组

js递归循环数组

作者: 最好的自己_3d47 | 来源:发表于2019-09-26 15:28 被阅读0次
从后台获取回来的数据是一个数组时,而且每个元素是一个对象,对象的层级不确定,就需要使用递归循环遍历所有子元素
var tdata=[
  {
    "code": "has Value Domain Member",
    "value": "未婚",
    "properties": [
      {
        "code": "MDM VD Member PKID",
        "value": "4055",
        "properties": [
          {
            "code": "MDM VD Member PKID",
            "value": "4055",
            "properties": []
          }
        ]
      }
    ]
  },
  {
    "code": "MDM VD Member Name",
    "value": "未婚",
    "properties": [
       {
          "code": "MDM VD Member PKID",
          "value": "4055",
          "properties": []
        }
     ]
  },
  {
    "code": "MDM VD Member ObjectID",
    "value": "10"
  },
  {
    "code": "MDM VD Member Code",
    "value": "10"
  },
  {
    "code": "MDM VD Member RefStandard",
    "value": "GB/T 2261.2-2003 个人基本信息分类与代码 第2部分: 婚姻状况代码"
  },
  {
    "code": "VD Member Sequence",
    "value": "1"
  }
];
function func(tdata,resData){
  if(Array.isArray(tdata) && tdata.length>0){
    tdata.forEach(function(v,i){
      var newValue=v.code+":"+v.value;
      resData[i]={};
      resData[i].label=newValue;
      var arr=[];
      func(v.properties,arr);
      resData[i].children=arr;
    });
  }
}
var resArr=[];
func(tdata,resArr);

相关文章

  • JS数组递归循环

  • js递归循环数组

    从后台获取回来的数据是一个数组时,而且每个元素是一个对象,对象的层级不确定,就需要使用递归循环遍历所有子元素

  • js递归循环

    以前一直以为递归循环不能改变被递归的数据本身,但今天无意间试了试,发现可以改变数据本身,究其原因递归本身是一种指针...

  • 【基础】循环

    循环 循环数组html {{item.content}} js /...

  • 数组

    1.递归求和: 2.for循环打印二维数组: 3.用递归判断数组是否递增: 结束条件:数组长度为1,返回true;...

  • JS数组扁平化的5种方法

    递归循环数组,判断 arr[i] 是否是数组,是数组的话再次调用此函数。const flatten = (arr)...

  • js数组题目

    js面试题 js数组 一、按要求分割数组 将"js,数组,分类"字符串数组以/分割 for循环累加 join()把...

  • 在多级数组对象中根据id取值,循环加递归

    在多级数组对象中根据id取值,循环加递归2019.12.20

  • 总结的一堆扁平化数组的方法

    扁平化数组(多维数组=>一维数组) 一、递归 (concat) 循环数组元素,判断是否是一个数组Array.isA...

  • 递归入门

    1.递归求前n项和 所有循环都可以转化为递归,而递归大多数可以转换为循环 2.递归求最大值 数组第一个下标与最后一...

网友评论

      本文标题:js递归循环数组

      本文链接:https://www.haomeiwen.com/subject/yxpsyctx.html