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
原文地址:http://www.cnblogs.com/jiekk/archive/2011/06/20/2085097.html