【发布时间】:2016-06-14 08:03:30
【问题描述】:
[
{
"id": "a",
"pid": "a",
"name": "AA",
},
{
"id": "b",
"pid": "a",
"name": "BB",
},
{
"id": "c",
"pid": "a",
"name": "CC",
},
{
"id": "x",
"pid": "b",
"name": "XX",
}
]
以上是我从数据库中得到的数据。每个人都有一个id 和一个pid,pid 指向该人的更高级别人员的id。如果一个人的等级最高,则id 等于pid。
我想将原始数据转换为分层 JSON,如下所示:
[
{
"id": "a",
"name": "AA",
"child": [
{
"id": "b",
"name": "BB"
"child": [
{
"id": "x",
"name": "XX"
}
]
},
{
"id": "c",
"name": "CC"
}
]
}
]
我正在使用 Node.js。
【问题讨论】:
-
数据是按id排序的,还是随机排序的?
-
@NinaScholz 是随机排序的,但 ID 是唯一的。
-
你怎么知道树的根?请添加更多数据以供检查。
-
@NinaScholz 当
id等于pid时,他就是根。 -
我更新了问题,谢谢!@NinaScholz
标签: javascript node.js algorithm tree