小tips:JS 将有父子关系的数组转换成树形数据

data.forEach(ele => {
      let parentId = ele.parentId;
      if (parentId === 0) {
        //是根元素的hua ,不做任何操作,如果是正常的for-i循环,可以直接continue.
      } else {
        //如果ele是子元素的话 ,把ele扔到他的父亲的child数组中.
        data.forEach(d => {
          if (d.id === parentId) {
            let childArray = d.child;
            if (!childArray) {
              childArray = []
            }
            childArray.push(ele);
            d.child = childArray;
          }
        })
      }
    });
    //去除重复元素
    data = data.filter(ele => ele.parentId === 0);
    console.log('最终等到的tree结构数据: ', data);

猜你喜欢

转载自www.cnblogs.com/moqiutao/p/9770484.html
今日推荐