深度拷贝实现

101 阅读1分钟
function deepClone(origin,target){   
           var target=target||{};
           for(var prop in origin){
               if(origin.hasOwnProperty(prop)){
                   if(typeof(origin[prop])=='object'){
                      if(Object.prototype.toString.call(origin[prop])=='[object Array]'){
                          target[prop]=[];
                      }
                      else{
                          target[prop]={};
                      }
                     deepClone(origin[prop],target[prop]);
                   }
                   else{
                   target[prop]=origin[prop];
               }
               }
               
               

             }
           
         }