ツリー指定されたidのすべての親ノードを探します

CONSTデータ= [{ 
    ID: 1 
    子供:[{ 
        ID: 2 
        子供:[{ 
            ID: 3 
        }、{ 
            ID: 4 
        }] 
    }] 
}、{ 
    ID: 5 
    子供:[{ 
        ID : 6 
    }] 
}]。

ノードを聞かせ = [];
関数getParentNodes(ID、ツリー){ 
    _getParentNodes([]、ID、木)
    リターン・ノード; 
} 

機能_getParentNodes(HIS、するtargetId、ツリー){ 
    tree.some((リスト) => { 
        CONST子供 = list.children || [];
         もし(list.id === するtargetId){ 
            ノード = 彼;
             返す ; 
        } そう もし(children.length> 0 ){ 
            CONST履歴 = [...彼]; 
            history.push(リスト); 
            戻り_getParentNodesを(履歴、するtargetId、子供); 
        } 
    })
}

  ID指定されたノードツリーを検索するには非常に簡単です。あなたのアイデアは、各オーダーの深さを横断する場合の変更を指定したすべての親ノードを検索したい場合は、指定した時間のノードID、このレコードの出力を見つけるまで、記録されています。

  それだけで過去に前のレコードのパスをすることができ、各反復中に必要です。

おすすめ

転載: www.cnblogs.com/youyouluo/p/11546462.html