我在js和angularjs中很新,遇到了一些我无法解决的基本问题。 我使用ng-repeat将$ scope.consignations添加到视图中。它是一个有几层的大对象。在示例代码中,我将$ scope.consignations赋值给temp,之后,我在temp对象内部“导航”,并在某些时候将数据推送到temp。它按预期改变视图。现在我想清除$ scope [elementName] obj,但它也从视图中清除了推送的数据。我试图删除临时引用(我认为它只是$ scope.consignations obj的引用),并且我不能再访问它,但是当我清除$ scope [elementName]时,它将清除视图。在javascript中删除对象引用
$scope.addElements = function(elementName){
temp=$scope.consignations;
for (var key in someArray) {
//here i "navigate" recursive inside temp
}
temp.push($scope[elementName]);
delete temp;
for (var key in $scope[elementName]) {
$scope[elementName][key]="";
}
};
你想完成什么? –
你觉得'delete temp'在做什么?删除操作符只用于删除属性,而不是对象。 –
我想用temp更新$ scope.consignations,但在完成之后,我想在$ scope.consignations或视图中没有任何其他更改的情况下清空$ scope [elementName]。 – user3130985