gpt4 book ai didi

javascript - 制表符分隔的树到 JSON

转载 作者:行者123 更新时间:2023-12-03 07:23:45 25 4
gpt4 key购买 nike

如何像这样转换制表符分隔的文本树:

a
a1
a3
a2

像这样的 JSON 格式树:

[
{
"name":"a",
"children":[
{
"name":"a1",
"children":[
{
"name":"a3",
"children":[]
}
]
},
{
"name":"a2"
"children":[]
}
]
}
]

在 JavaScript 中?我想您已经明白了,我想要将制表符 \t 分隔的树结构转换为 JSON 树结构。谢谢!

最佳答案

您可以将数据拆分为行和单独的选项卡以获取级别和名称。

要创建树,请采用已知级别的数组,并将每个新节点分配给该级别的数组和下一个级别。

var data = 'a\n\ta1\n\t\ta3\n\ta2',
tree = [];
levels = [tree];

data
.split('\n')
.forEach(s => {
const [{ length: level }, name] = s.split(/([^\t]+)/);
levels[level].push({ name, children: levels[level + 1] = [] });
});

console.log(tree);
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 制表符分隔的树到 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64593884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com