博客园

super.hill

记录搬砖中遇到的坑,欢迎批评指导!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
function arr2tree(arr) {
  let _map = {};
  let list = [];
  for (let i = 0; i < arr.length; i++) {
    let item = arr[i];
    // 如果id 小于 等于 0 跳过
    if(item.id <= 0) continue;
    if (item.parentId === 0) {
      // 父级节点 直接添加
      list.push(item);
      _map[item.id] = item;
    } else {
      // 子集节点 需要挂在 父节点的children里
      let parentId = item.parentId;
      let parent = _map[parentId];
      if (!parent.children) {
        parent.children = [];
      }
      
      parent.children.push(item);

      _map[item.id] = item;
    }
  }
  return list;
}

 

posted on 2021-09-30 17:52  超岭  阅读(67)  评论(0编辑  收藏  举报
博客园