var obj1 = {name: 'Tom', age: 20}; var obj2 = Object.assign({}, obj1); console.log(obj2); // 输出:{name: 'Tom', age: 20}在这个例子中,我们创建了一个新的空对象obj2,并将obj1的属性复制到obj2中。
function deepCopy(obj) { var newObj = Array.isArray(obj) ? [] : {}; for (var key in obj) { if (typeof obj[key] === 'object') { newObj[key] = deepCopy(obj[key]); } else { newObj[key] = obj[key]; } } return newObj; } var obj1 = {name: 'Tom', age: 20, address: {city: 'Beijing'}}; var obj2 = deepCopy(obj1); console.log(obj2); // 输出:{name: 'Tom', age: 20, address: {city: 'Beijing'}}在这个例子中,我们定义了一个递归函数deepCopy,它会遍历obj1的所有属性,并根据属性的类型创建一个新的副本。
本文为翻滚的胖子原创文章,转载无需和我联系,但请注明来自猿教程iskeys.com