私は、ノードオブジェクトのツリー構造を構築していますBFSを介して選択されたノードを見つけることができる:クローン部分は
root.bfs(function(node){
console.log(node, node.selected);
});
...選択されたすべての対応するpにマークすることも非常に簡単ですルートまでのノードをアレント:
var n = node;
do {
n.selected = true;
n = n.parentNode;
} while (n);
は今、私が選択した葉と対応する親ノードと最初のツリー構造のクローンを作成する必要がありますが、私は彼らに新しい子ノードを再割り当てすることはできませんよそれぞれ新しい親。
JSON.stringify()で試行すると、循環参照エラーが発生します。
最初のツリーのクローンを、選択されたリーフを持つブランチだけでどのように再構成できますか?