伪代码

function cloneTree(tree){
    function dfs(node){
        let cloneNode = clone(node)
        cloneNode.children= tree.children.map(v=>dfs(v))
        return cloneNode
    }
    return dfs(tree)
}