复制对象

Posted 改变

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了复制对象相关的知识,希望对你有一定的参考价值。

function copy(obj) {
const copy = Object.create(Object.getPrototypeOf(obj));
const propNames = Object.getOwnPropertyNames(obj);

propNames.forEach(function(name) {
const desc = Object.getOwnPropertyDescriptor(obj, name);
Object.defineProperty(copy, name, desc);
});

return copy;
}

const obj1 = { a: 1, b: 2 };
const obj2 = copy(obj1); // obj2 looks like obj1 now
obj2.c=3;
console.log(obj2); //{ a:1,b:2,c:3 }
console.log(obj1); //{a: 1, b: 2 }

 

//对象之间会互相不影响

以上是关于复制对象的主要内容,如果未能解决你的问题,请参考以下文章

Java 对象复制的最佳选择? [复制]

JAVA浅复制与深复制

如何将月份值从一个 Date 对象复制到另一个对象? [复制]

clone中的浅复制和深复制

OC中对象的复制:一

OC中对象的复制:一