Javascript 在不相互影响的情况下设置角度变量
我是新来的,我想我碰到了一个简单的问题。很抱歉,如果我回答了这个问题,但我找不到任何相关主题 我需要在不影响彼此的情况下设置Javascript 在不相互影响的情况下设置角度变量,javascript,angularjs,Javascript,Angularjs,我是新来的,我想我碰到了一个简单的问题。很抱歉,如果我回答了这个问题,但我找不到任何相关主题 我需要在不影响彼此的情况下设置$scope变量,但是我正在设置它们,它们都会以相同的结果进行更新: var defaultFilterValues = { show_limit: 20, purpose: {} }; $scope.filter = defaultFilterValues; console.log($scope.filter); console.log(default
$scope
变量,但是我正在设置它们,它们都会以相同的结果进行更新:
var defaultFilterValues = {
show_limit: 20,
purpose: {}
};
$scope.filter = defaultFilterValues;
console.log($scope.filter);
console.log(defaultFilterValues);
如果我设置
$scope.filter={/*any data*/}
这两个结果都会更新,那么如何隔离defaultFilterValue
以始终具有主要结果?这是因为JavaScript中的所有对象都是通过引用复制的,您需要
angular.extend($scope.filter, defaultFilterValues);
不是100%确定您想要什么,但您可以使用
angular.copy()
复制未引用到原始对象的副本
参考文献
它还将清除angular添加到对象中的所有内部哈希键,那么您到底想做什么?
$scope.filter = angular.copy(defaultFilterValues);