json数据都在同一级怎么转换为树状结构

村口的二狗子 2019-07-09 12:49:58
一二三四级菜单数据都在同一级怎么转成树状结构
...全文
338 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
scscms太阳光 2019-07-09
  • 打赏
  • 举报
回复
   let json = [
{
index:0,
CategoryDepth:0,
CategoryId:'001',
CategoryName:'一级菜单',
CategoryCategoryId:'0'
},
{
index:1,
CategoryDepth:1,
CategoryId:'002',
CategoryName:'二级菜单',
CategoryCategoryId:'001'
},
{
index:2,
CategoryDepth:1,
CategoryId:'0022',
CategoryName:'二级菜单',
CategoryCategoryId:'001'
},
{
index:3,
CategoryDepth:3,
CategoryId:'003',
CategoryName:'三级菜单',
CategoryCategoryId:'002'
},
{
index:4,
CategoryDepth:4,
CategoryId:'004',
CategoryName:'四级菜单',
CategoryCategoryId:'003'
}
]
let arr = JSON.parse(JSON.stringify(json))//深克隆一份
arr.forEach(obj => {
!Array.isArray(obj.child) && (obj.child = [])
arr.forEach(o => {
if (o.CategoryCategoryId === obj.CategoryId) {
obj.child.push(o)
}
})
})
arr = arr.filter(obj => obj.CategoryCategoryId === '0')
console.log(arr)
scscms太阳光 2019-07-09
  • 打赏
  • 举报
回复
这种很多种方法可以转。曾布置同样的作业每个学生写的都不一样。

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧