我查找了一下JavaScript中树形结构的基本格式:
function Tree(parent, child, data) {
this.parent = parent;
this.children = child || [];
this.data = data;
this.addNode ...
this.addChild ...
}
我遇到的问题是使用这种方法创建一棵很“长”的树。我使用的数据是沿着一条几乎是直线路径的街道列表,但是这条路径中有几个小分支,数据看起来可能是这样的:
A ->
B ->
C ->
D -> E,F
E ->
G ->
H
F -> I
I -> J
J -> K,L
K ->
M ->
N
L -> O
O -> P
我希望避免看起来像这样的代码:
tree.children[0].children[0].children[0].addNode("E");
tree.children[0].children[0].children[0].push("F");
所以我的问题之一是如何遍历树,简单地说?
node = tree;
while(node.children != null)
node = node.children[0];
如果您能帮我一下,我会非常感激,谢谢。
mathacka