js 遍历tree

clipboard.png

我怎么遍历得到tree图

阅读 5.1k
2 个回答

楼主可以试着把使用目的描述得更明确一些,大家就不用先猜测然后根据猜测给出方案了。

  1. 原谅我妄自理解为数据的重组

  2. 看了你的数据结构,根节点的parent为null,叶子节点的children为[]

  3. 递归函数样例,根据需求自己修改

var data=[
    {
      name:'1',
    parent:null,
    id:'1',
    children:['101']
  },
  {
      name:'101',
    parent:'1',
    id:'101',
    children:['10101']
  },
  {
      name:'10101',
    parent:'101',
    id:'10101',
    children:[]
  }
];
var json=[];
function tree(parent){
    for(var key in data){
      if(data[key].parent == parent){
        json.push(data[key].name);
      if(data[key].children.length>0){          
            tree(data[key].id);        
      }else{
          return;
      }
    }
  }
}
tree(null);
console.log(json);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题