js浅拷贝、深拷贝

来源:互联网 发布:隋朝知乎 编辑:程序博客网 时间:2024/06/10 00:12
 //浅拷贝
/*var obj={a:10};
function copy(){
     var newObj={};
for(var attr in obj){
     newObj[attr]=obj[attr]; 
}
return newObj;
}
var obj2=copy(obj);
obj2.a=20;
alert(obj.a);  //10*/


 //深拷贝
var obj={a:{b:10}}
function deepCopy(obj){
if(typeof obj != 'object'){
console.trace();
    return obj; 
}
     var newObj={};
for(var attr in obj){
     newObj[attr]=deepCopy(obj[attr]); 
}
/* for(var attr in newObj){
       alert(typeof newObj[attr]) 
}*/
return newObj;
}
var obj2=deepCopy(obj);
obj2.a.b=20;
//alert(obj.a.b);  //10
0 0
原创粉丝点击