2
내가 좋아하는 중첩 된 개체를 사용하여 자바 스크립트에서 간단한 트리 데이터 구조를 통과하는트리</p> <pre><code>class Node { name: "", children: [ ...Node ] } rootNode=[Node, Node, Node...] </code></pre> 이제 <p>,</p> <p>내가 좋아하는 조건을 일치하는 모든 노드를 트리를 탐색하고 발견, 최적화
let result =[];
let allNodes =[];
if isArray(rootNode) {
rootNode.each(x=>{
allNodes.push(x)
});
} else {
allNodes.push(rootNode);
}
while (allNodes.length) {
let currentNode = allNodes.shift();
if (predicate(currentNode) {
result.push(currentNode);
}
if (currentNode.children.length) {
allNodes.push(addAllChild(currentNode.children))
}
}
효과적인 방법이 있습니까?