java 解析 json三维数组,多个数组转一个三维json

呃,其实你这个就是个简单的列表转树结构...

function listToTree (srcList) {

let destList = []

srcList.forEach(pathList => {

let levelList = destList

for (let name of pathList) {

let obj = levelList.find(item => item.name === name)

if (!obj) {

obj = { name, sub: [] }

levelList.push(obj)

}

levelList = obj.sub

}

})

return destList

}

测试:

list = [

['广东', '广州', '荔湾'],

['广东', '广州', '番禺'],

['广东', '珠海'],

]

console.log(JSON.stringify(listToTree(list)))

输出

[

{

"name":"广东",

"sub":[

{

"name":"广州",

"sub":[

{

"name":"荔湾",

"sub":[

]

},

{

"name":"番禺",

"sub":[

]

}

]

},

{

"name":"珠海",

"sub":[

]

}

]

}

]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值