javascript复制对象

oldObj是一个对象,而不是值

例如var newObj=oldObj;

如果想oldObj改变的时候不影响到newObj;

可以这样写一个函数

function clone(myObj){
if(typeof(myObj) != 'object') return myObj;
if(myObj == null) return myObj;

var myNewObj = new Object();

for(var i in myObj)
myNewObj[i]
= clone(myObj[i]);

return myNewObj;
}

然后这样调用

newObj=clone(oldObj)
之后,oldObj的值无论怎么改变都不会影响newObj

原文地址:https://www.cnblogs.com/jiekk/p/2085097.html