扁平化数组


用于后台返回的父子并未嵌套

function transformData(data){

//先保留所有的key与value【保留成一个数组】
  let newData=[data,arr2];
  newData.reduce((pre,curr,index,arr)=>{
   pre[curr["id"]]=curr;
 return pre;
},{});
}

//查考子元素的pid与父元素的一样吗
let result=newData.reduce((arr,curr)=>{

let pid=curr.pid;
let parent=transformData(pid);
//返回的是key是id,值是value  pre[curr["id"]]=curr
//父元素存在,直接添加到父元素里面 或 直接添加 if(pre){ parent.children?parent.children.push(curr):parent.children=[curr]; }else if(pid=0)//不存在的条件{ arr.push(curr); } return arr; },[]);

相关