zoukankan      html  css  js  c++  java
  • 将数组根据父元素字段关联转成一棵树

     var array = [{id: '0',parentId:null},{id: '1',parentId:'0'},{id: '2',parentId:'0'},{id: '3',parentId:'1'},{id: '4',parentId:'3'},{id: '5',parentId:'4'}];
           //排序
           array.sort(function(a,b){
                return a.id - b.id;
            });
           //数据递归
           function createTree(arr,rootid){
               var carr=findChild(arr,rootid);
               if(!carr.length){
                   return null;
               }
               for(var i=0;i<carr.length;i++){
                   var cTree=createTree(arr,carr[i].id);
                   if(cTree!==null){
                       carr[i]['children']=cTree;
                   }
               }
               return carr;
           }
    
           //获取子元素
            function findChild(arr,id){
                var cArr=[];
                for(var i=0; i<arr.length;i++){
                    if(arr[i].parentId===id){
                        cArr.push(arr[i])
                    }
                }
                return cArr;
            }
           console.log(createTree(array,null));
  • 相关阅读:
    3.14周末作业
    3.13作业
    文件处理
    字符编码
    基本数据类型总结
    基本数据类型--------------------集合set()
    python入门009
    作业009
    python入门008
    作业008
  • 原文地址:https://www.cnblogs.com/zml-mary/p/7693790.html
Copyright © 2011-2022 走看看