js获取树形结构的所有节点(以下调用方法的写法是用在vue项目中)

1、先看数据结构

js获取树形结构的所有节点(以下调用方法的写法是用在vue项目中)

2、实现代码

  //获取树形结构的所有节点
lookForAllId(data = [], arr = []) {
      for (let item of data) {
        arr.push(item);
        if (item.children && item.children.length)
          this.lookForAllId(item.children, arr);
      }
      return arr;
},

3、调用

let arrAll = this.lookForAllId(this.treedata);  //this.treedata为树形结构的数据
        arrAll.forEach((item2) => {
          console.log(item2)  //所有的节点
          //判断是否还有子级 
          if (item2.children == null) {
          //没有子级
          }else{
          //有子级
        });

看打印结果

js获取树形结构的所有节点(以下调用方法的写法是用在vue项目中)

 

 完结!

上一篇:将地图中一个不能到达的点和可以到达的点连通


下一篇:VUE+ElementUI实现左侧为树形结构、右侧无层级结构的穿梭框