我在javascript中有一个字符串变量,如下所示:
var tree='[{"id":1},{"id":2,"children":[{"id":3},{"id":4},{"id":5,"children"[{"id":6}]}]';
now i want to create a tree from this in which
# 1 and 2 will at same level
# 3 ,4 ,5 will be the sub nodes of 2.
# 6 will be the sub node of 5.
请通过javascript或jquery帮助树形成这个树变量。 变量
答案 0 :(得分:0)
在我看来,没有多少东西。我发现了一些拼写错误,但除此之外,它是一个JSON结构。在第二个“孩子”之后有一个结肠缺失,一些右侧括号也丢失了。我删除了引号。
var tree = [{
"id" : 1
}, {
"id" : 2,
"children" : [{
"id" : 3
}, {
"id" : 4
}, {
"id" : 5,
"children" : [{ //missing colon
"id" : 6
} //missing bracket
] //missing bracket
}
]
}
];
console.log(JSON.stringify(tree[0]));
console.log(JSON.stringify(tree[1]));
console.log(JSON.stringify(tree[1].children));
答案 1 :(得分:0)
var tree='[{"id":1},{"id":2,"children":[{"id":3},{"id":4},{"id":5,"children"[{"id":6}]}]';
var objTree = JSON.parse(tree);
console.log(objTree);
只是提醒一下你有几个错别字 - 找到它们,把你的字符串放到http://jsonlint.com
的解析器中答案 2 :(得分:0)
有一些拼写错误,请参阅评论。
无论如何,您只需使用JSON.parse
var tree='[{"id":1},{"id":2,"children":[{"id":3},{"id":4},{"id":5,"children":[{"id":6}]}]}]';
//Missing ':' near 'children' and '}]' at the end
var array = JSON.parse(tree);