树形结构寻找所有父级节点
/**
* 树形结构寻找所有父级节点
* @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")