- 58
- 0
小弟初学js,遇到一个难题,关于把一个多层数据结构的转换成treeview可识别的格式问题
原数据格式为:
{
"root": "body",
"structure": {
"body": [
"head",
"foot"
],
"head": [
"control",
"tabs"
],
"control": [
"c123",
"c456",
"c789"
],
"tabs": [
"33",
"44"
],
"foot": [
"footLeft",
"divEnd"
],
"footLeft": [
"footLeftContainer"
],
"footLeftContainer": [
"add22",
"ffff",
"fff"
],
"divEnd": [
"divEnd$111"
]
}
};
期望处理成的格式为:
[
{
text: "body",
nodes: [
{
text: "head",
nodes: [
{
text: "control",
nodes: [
{
text: "c123"
},
{
text: "c456"
},
{
text: "c789"
}
]
},
{
text: "tabs",
nodes: [
{
text: "t33"
},
{
text: "t44"
}
]
}
]
},
{
text: "foot",
nodes: [
{
text: "footLeft",
nodes: [
{
text: "footLeftContainer",
nodes: [
{
text: "add22"
},
{
text: "ffff"
},
{
text: "fff"
}
]
}
]
},
{
text: "divEnd",
nodes: [
{
text: "divEnd$111"
}
]
}
]
}
]
}
]
原理就是从structure中层层找child,起始点是root节点的值(即"body")
每个节点的child如果不在structure一级节点中,则认为是叶子节点
想了一天,没有好办法,来求助各位前辈
0
打赏
收藏
点击回答
您的回答被采纳后将获得:提问者悬赏的 11 元积分
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
