js深拷贝

こ雲淡風輕ζ 提交于 2020-03-08 13:51:22
function deepclone(obj){
    if(typeof obj !== "object" || typeof obj == null){
        return obj;
    }
    let result;
    if(obj instanceof Array){
        result = [];
    }else{
        result = {};
    }
    for(let key in obj){
        if(obj.hasOwnProperty(key)){
            result[key] = deepclone(obj[key]);
        }
    }
    return result;
}
let a = {
    age: 24,
    address: {
        port : 24
    }
}
let b = deepclone(a);
b.age = "22";
console.log(a);
console.log(b);
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!