js 遍历树的层级关系的实现

Posted BigOrang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 遍历树的层级关系的实现相关的知识,希望对你有一定的参考价值。

js 遍历树的层级关系的实现
1.遍历树的层级关系

1)先整理数据

2)找到id和数据的映射关系

3)然后找到父节点的数据,进行存储

test() {
      const list = [
        { id: "123", parentId: "", children: [] },
        { id: "124", parentId: "123", children: [] },
        { id: "125", parentId: "124", children: [] },
        { id: "126", parentId: "125", children: [] },
        { id: "127", parentId: "126", children: [] }
      ];
      const mapList = [];
      const tree = [];
      list.forEach(item => {
       
        mapList[item.id] = item;
      });
      list.forEach(item => {
        const parentNode = mapList[item.parentId];
        if (!parentNode) {


       if (!item.children) {
         item.children = []
       }

          tree.push(item);
        } else {


      if (!parentNode.children) {
        parentNode.children = []
      }

          parentNode.children.push(item);
        }
      });
      console.log("tree", tree);
    }

参考

以上是关于js 遍历树的层级关系的实现的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 102 Binary Tree Level Order Traversal(二叉树的层级顺序遍历)(*)

JS遍历DOM 节点树的实现

javascript/js实现 排序二叉树数据结构 学习随笔

leetcode(144,94,145,102)中迭代版的二叉树的前中后层级遍历

js中将有层级关系的一维数据转换为父子级关系的二维数据菜单权限三级层级数据实现(树形结构数据)

js中将有层级关系的一维数据转换为父子级关系的二维数据菜单权限三级层级数据实现(树形结构数据)