SOURCE

function deepClone(target, map = new WeakMap) {
    if (typeof target ==='object') {
         const cloneTarget = Array.isArray(target) ? [] : {}

         if(map.has(target)) {
             return map.get(target)
         }  
         map.set(target,cloneTarget)
         for(key in target) {
             cloneTarget[key] = deepClone(target[key], map)
         }
         return cloneTarget
    } else {
        return target
    }
}



console 命令行工具 X clear

                    
>
console