
自己想了试了好久,应该是要用到递归的。
如果是嵌套的数据,我能拉平。但是反向,总感觉少考虑了什么。
数据类似如下
let data = [ {name:"1",level:1}, {name:"1.1",level:2}, {name:"1.1.1",level:3}, {name:"2",level:1}, {name:"2.1",level:2}, {name:"3",level:1}, {name:"3.1",level:2}, {name:"3.1.1",level:3}, {name:"3.2",level:2}, {name:"3.2.1",level:3}, {name:"4",level:1}, ] 大概像上面的数据
最后的"嵌套化"后的格式
[{ name:"1", level:1, children:[{ name:"1.1", level:2, children:[ {name:"1.1.1",level:3}] }] }] 1 sunjourney 2017 年 11 月 29 日 这个 name 和 level 冗余了吧。用 reduce 处理下就行了 |