【发布时间】:2019-04-02 15:46:39
【问题描述】:
我有一个结构如下的 json 文件:
{
"a": "b",
"c": "d",
"e": {
"f": "g",
"h": "i"
}
}
我希望它具有以下结构:
{
"name": "Root",
"parent": "null",
"children": [
{
"name": "a",
"parent": "Root",
"children": [
{
"name": "b",
"parent": "a"
}
]
},
{
"name": "c",
"parent": "Root",
"children": [
{
"name": "d",
"parent": "d"
}
]
},
{
"name": "e",
"parent": "Root",
"children": [
{
"name": "f",
"parent": "e",
"children": [
{
"name": "g",
"parent": "f"
},
{
"name": "h",
"parent": "e",
"children": [
{
"name": "i",
"parent": "h"
}
]
}
]
}
]
}
]
}
我想有一个父子层次关系,这样可以更容易地绘制一个带有节点的可折叠树图。如果缩进不正确,请原谅。
【问题讨论】:
-
欢迎来到 StackOverflow!请访问Help Center,使用tour 并在此处阅读asking good questions。
-
为什么是
parent节点?他们不会添加结构中尚未包含的任何信息。 -
你试过什么?您必须遍历键并创建自己的结果 json,可能使用某种递归。
-
为什么会有一个外部数据数组?
-
循环您的数据并构建新对象,实际上没有任何自动魔术方法可以做到这一点,但正如其他人指出的那样,请考虑在编码之前重新设计您的数据模型。
标签: javascript json typescript