猿问

js如何平铺树结构?

将树结构的数组平铺成一个普通的数组应该怎么解决?
相关代码
costtreeNode=[{
parentId:0,
title:"目录1",
id:1,
children:[{
parentId:1,
title:"子目录1-1",
id:22,
},{
parentId:1,
title:"子目录1-2",
id:33,
}],
},{
parentId:0,
title:"目录2",
id:2,
children:[{
parentId:2,
title:"子目录2-1",
id:44,
},{
parentId:1,
title:"子目录2-2",
id:55,
}],
}];
变成这种结构
constarr=[{
id:1,
parentId:0,
title:"目录1"
},{
id:22,
parentId:1,
title:"子目录1-1"
},{
id:33,
parentId:1,
title:"子目录1-2"
},{
id:2,
parentId:0,
title:"目录2"
},{
id:44,
parentId:1,
title:"子目录2-1"
},{
id:55,
parentId:2,
title:"子目录2-2"
}];
你期待的结果是什么?实际看到的错误信息又是什么?
沧海一幻觉
浏览 1172回答 2
2回答

心有法竹

递归遍历就好functiontrans(data){lettransData=[]functiongo(data){for(letitemofdata){let{parentId,title,id,children}=item;letnewItem={parentId,title,id}transData.push(newItem)if(children){go(children)}}}go(data)returntransData;}letnewData=trans(treeNode)console.log(newData)
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答