我有两个对象的数组:
genericItems: Item[] = [];
backupData: Item[] = [];
Run Code Online (Sandbox Code Playgroud)
我用genericItems数据填充我的html表.该表是可修改的.有一个重置按钮可以撤消所有已完成的更改backUpData.此数组由服务填充:
getGenericItems(selected: Item) {
this.itemService.getGenericItems(selected).subscribe(
result => {
this.genericItems = result;
});
this.backupData = this.genericItems.slice();
}
Run Code Online (Sandbox Code Playgroud)
我的想法是,用户更改将反映在第一个阵列中,第二个阵列可用作重置操作的备份.我在这里面临的问题是当用户修改表(genericItems [])时,第二个数组genericItems[])也会被修改.这是怎么回事以及如何防止这种情况发生的?