Javascript 即使在变量初始化之后,原始模型/对象也始终更新

Javascript 即使在变量初始化之后,原始模型/对象也始终更新,javascript,angular,typescript,angular-reactive-forms,Javascript,Angular,Typescript,Angular Reactive Forms,您好目前我正在尝试为originalModel填充一个默认模型来存储原始值。我遇到的问题是,即使在我初始化它之后,这个原始模型仍在不断更新,我不知道为什么这里是我唯一一次初始化值 export abstract class RequestBaseComponent{ protected abstract get model(): FaspRequest; //the subClass populates this via Input() originalModel: Fasp

您好目前我正在尝试为originalModel填充一个默认模型来存储原始值。我遇到的问题是,即使在我初始化它之后,这个原始模型仍在不断更新,我不知道为什么这里是我唯一一次初始化值

export abstract class RequestBaseComponent{  
    protected abstract get model(): FaspRequest; //the subClass populates this via Input()
    originalModel: FaspRequest;

    constructor(    private formBuilder: FormBuilder 
    ) {
    }

    ngOnInit() {
     this.originalModel = this.model;
     this.setupForm();
    }
}

也许这是一个参考问题。当您执行
this.originalModel=this.model
,您实际上是在
this.originalModel
中存储
this.model
的引用。因此,当更新
this.model
时,
this.orginalModel
将被更新

试试这个

this.originalModel = JSON.parse(JSON.stringify(this.model));