js无限层级目录实现
var dict = {};
var list = [
{ name: '第一章', id: 1, pid: -1 },
{ name: '第二章', id: 1782367, pid: -1 },
{ name: '第一节', id: 21312, pid: 1 },
{ name: '第二节', id: 2131221, pid: 1 },
{ name: '第一节', id: 21312, pid: 1782367 },
];
for (var i = 0; i < list.length; i++) {
dict[list[i]['id']] = list[i];
list[i]['children']=[];
}
for (var i = 0; i < list.length; i++) {
if (dict[list[i].pid]) {
dict[list[i].pid].children.push(list[i]);
list.splice(i, 1);
i--;
}
}
console.log(JSON.stringify(list));