我正在尝试克隆使用new
创建的对象。我发现这样做的唯一方法是:
let tmp = Object.create(instance.__proto__);
let obj = Object.assign(tmp, instance);
这个例子起作用并完成工作,但看起来不是一个合适的解决方案。我想知道是否有更好的方法来克隆使用new
创建的对象?
任何帮助将不胜感激!
答案 0 :(得分:0)
这完全取决于您是要制作深还是浅克隆。
为简单起见,我们假设您要在代码中创建浅克隆。
然后,您可以使用您提供的较短版本的代码:
let obj = Object.assign({}, instance);
let obj = {...instance};
两种方式都是正确的。