如何深入复制打字稿

时间:2017-11-21 12:20:02

标签: jquery typescript

我在打字稿中有对象:

export class A {
 public var1: boolean = false;
 public var2: boolean = false;
 public b: B = new B();

}

export class B {
   public v: boolean = false;
}

并声明并存在对象:

...
public a: A = new A();
...

当我使用jQuery时:

const myCopy: A = $.extend(true, {}, this.a);
this.a.b.v = true;

当我更改变量对象this.a时,我看到副本的变化。 在这种情况下如何深度复制。

1 个答案:

答案 0 :(得分:2)

你可以使用三联...

let b = new A();
const mCopy = {...b}; 

或者你可以使用json stringify和json parse

const mCopy = JSON.parse(JSON.stringify(target));