1.潜复制(修改新对象会改变原对象)
var baz = {a:‘hello‘, b: {c:‘my‘, d:‘friend‘}} var foo = baz foo.a="better" console.log(foo.a)//better console.log(baz.a)//better
2.深复制(修改新对象不会改变原对象)
var baz = {a:‘hello‘, b: {c:‘my‘, d:‘friend‘}} var foo = {} var deepCopy= function(obj) { var newObj={}; for (var key in obj) { newObj[key] = typeof obj[key]===‘object‘? deepCopy(obj[key]): obj[key]; } return newObj; } foo = deepCopy(obj) foo.a="better" console.log(foo.a)//better console.log(baz.a)//hello
原文:http://www.cnblogs.com/bldf/p/6298758.html