0
点赞
收藏
分享

微信扫一扫

js 对象的clone()函数


function clone(Obj){
var buf;
if(Obj instanceof Array){
buf=[];
var i=Obj.length;
while(i--){
buf[i]=clone(Obj[i]);
}
return buf;
}
else if(Obj instanceof Object){
buf={};
for(var k in Obj){
buf[k]=clone(Obj[k]);
}
return buf;
}else{
return Obj;
}
}

js对象之间的赋值,如果直接用"="会发现来两个对象还是同一个对象,改变其中一个另外的一个也会做出对应的改变

为了解决这个问题,可以利用java里面的clone的原理

比如:

var temp=vusp.data[i]

此时我们改变temp里面的值 vusp.data[i] 里面的值也会改变

可以利用上面的函数 :var temp=clone(vusp.data[i])

希望对你有所帮助!

 

举报

相关推荐

0 条评论