从对象中删除属性是从具有相似名称的另一个对象中删除属性

问题描述:

我有两个对象。一个是主数据,另一个是类似的对象,但包含我正在使用的某些属性,并且是主数据的子集。请找出两个对象如下:从对象中删除属性是从具有相似名称的另一个对象中删除属性

$scope.masterData = { 

"StoresForOrgs": { 
    "PPP0001188": ["007071","007073","007079"], 
    "PPP0001189": ["007075","0070756","0070789"], 
    "PPP0001190": ["007075","0070756","0070789", "00707893", "00707899"] 
    } 
} 

$scope.masterDataForDisplay = { 

    "StoresForOrgsDisplay": { 


     } 
} 

如果我的代码做

$scope.masterDataForDisplay = $scope.masterData; 

这是连接两个对象,如果我改变masterDataForDisplay它正在改变masterData为好。现在我明白了比较这两个会产生相同的参考,这可以通过使用再

避免试试这个

$scope.masterDataForDisplay = JSON.parse(JSON.stringify($scope.masterData)); 

,但即使不执行的代码发生这种情况。对象是否被初始化?

使用这样的:

$scope.masterDataForDisplay = angular.copy($scope.masterData); 

代替

$scope.masterDataForDisplay = $scope.masterData; 

拷贝():创建源的深层副本,这应该是一个对象或一个数组。所以他们不分享相同的参考