我有两个对象的数组:
genericItems: Item[] = []; backupData: Item[] = [];
我用genericItemsdata填充我的html表.该表是可修改的.有一个重置按钮可以撤消对backUpData所做的所有更改.此数组由服务填充:
getGenericItems(selected: Item) { this.itemService.getGenericItems(selected).subscribe( result => { this.genericItems = result; }); this.backupData = this.genericItems.slice(); }
我的想法是,用户更改将反映在第一个阵列中,第二个阵列可用作重置操作的备份.我在这里遇到的问题是当用户修改表(genericItems [])时,第二个数组backupData也被修改.这是怎么回事以及如何防止这种情况发生的?
试试这个 :
克隆数组:
const myClonedArray = Object.assign([],myArray);
克隆一个对象:
const myClonedObject = Object.assign({},myObject);