【JS】半调子的clone函数

2020-08-13  本文已影响0人  Dylan_abaa

var obj1 = {};

var obj2 = {

    name: "laoyu",

    friend: ["laogao","nuko"],

    gf: {

        name: "aa",

        coding: function(){

            console.log(coding);

        }

    }

}

obj1 = Deepclone(obj2);

function Deepclone(origin,target){

    var target = target || {};

    for(var prop in origin){

        if (origin[prop] instanceof Array && typeof origin[prop] === 'object'){

            target[prop] = [];

            Deepclone(origin[prop],target[prop]);

        }else if(Object.prototype.toString.call(origin[prop]) == "[object Object]"){

                            target[prop] = {};

                            Deepclone(origin[prop],target[prop]);

        }

        else{

            target[prop]= origin[prop];

        }     

    }

    return target;

}

上一篇 下一篇

猜你喜欢

热点阅读