JSON字符串超出格式化的Javascript字符串以表示树结构

时间:2011-03-14 09:39:12

标签: javascript json tree

我有一个表示树结构的javascript字符串为 [a [b,c] d [e]] - 表示该树有2个顶级节点 a d a 有2个子节点 b c & d 具有子节点 e )。

我想要上面树的JSON表示。 (键可以与值相同)。我想以编程方式为任意数量的节点和子节点进行转换。

我想知道是否存在一些我可以重用的代码。

1 个答案:

答案 0 :(得分:1)

否定答案总是很棘手,但如果您正在寻找可以转换此字符串的预先存在的代码

'[a[b,c]d[e]]'

进入此字符串

'{"a": ["b", "c"], "d": ["e"]}'

或这个字符串(我无法分辨哪个)

'{"a": {"b": "b", "c": "c"}, "d": {"e": "e"}}'

或类似的,我认为答案是否定的,你必须自己编写转换。不会很难,可能甚至不需要使用正则表达式,除非可能匹配标识符。

您可以选择直接字符串>字符串转换(再次看起来相当简单),也可以将符号转换为对象,然后使用json2.js中的JSON.stringify或类似内容把它变成一个JSON字符串。后一种方法的优点是你不必担心做必要的值转义,因为它会成为字符串化器的问题。