function aTt(arr) {
let res = []
let itemMap = {}
for (const item of arr) {
const { id, pid } = item
itemMap[id] || (itemMap[id] = { children : [] })
itemMap[id] = {
...item,
children: itemMap[id]['children']
}
const treeItem = itemMap[id]
if (pid === 0) {
res.push(treeItem)
} else {
itemMap[pid] || ( itemMap[pid] = { children: [] })
itemMap[pid]['children'].push(treeItem)
}
}
return res
}