查找節點其實就是一個遍歷的過程,遍歷到滿足條件的節點則返回,遍歷完成未找到則返回null。類似數組的find方法,傳入一個函數用於判斷節點是否符合條件,代碼如下:
function treeFind (tree, func) { for (const data of tree) { if (func(data)) return data if (data.children) { const res = treeFind(data.children, func) if (res) return res } } return null }