js 树形结构寻找所有父级节点

825 阅读1分钟

树形结构寻找所有父级节点

/**

 * 树形结构寻找所有父级节点

 * @param {array} data 树形结构数组 如 deptList

 * @param {object} obj 回传回去的对象,但是要先传一个{}

 * @param {string} key 要寻找的负极接电依据的key值,如 'deptId'

 */

 function findTreePath(data, obj, key) {

    for (let item of data) {

        obj[item[key]] = item;

        if (item.children && item.children.length > 0) findTreePath(item.children, obj, key);

    }

    return obj;

}

findTreePath([ {id:1,pid:0,name:"aaa",children:[{id:2,pid:1,name:"bbb",children:[{id:3,pid:2,name:"ccc"}]} ]}],{},"pid")