Javascript angularjs范围两个值保持相互指向
嗨,我正在尝试将一个范围值从一个范围复制到另一个范围。例如:Javascript angularjs范围两个值保持相互指向,javascript,jquery,angularjs,angularjs-scope,angularjs-service,Javascript,Jquery,Angularjs,Angularjs Scope,Angularjs Service,嗨,我正在尝试将一个范围值从一个范围复制到另一个范围。例如: var items=$scope.order.invoicewindow.items; $scope.order.orderwindow.items=items; 然而,两个作用域都指向对方。因此,如果我更改$scope.order.orderwindow=“abc”,那么$scope.order.invoicewindow.items也会变成“abc”(我不想要它,我只想要$scope.order.orderwindow=
var items=$scope.order.invoicewindow.items;
$scope.order.orderwindow.items=items;
然而,两个作用域都指向对方。因此,如果我更改$scope.order.orderwindow=“abc”,那么$scope.order.invoicewindow.items也会变成“abc”(我不想要它,我只想要$scope.order.orderwindow=“abc”)
谢谢您可以使用
它们将指针传递到内存位置。将第二行更改为$scope.order.orderWindow.items=angular.copy(items);这种情况是不可能的,“abc”是一个基本值(字符串),永远不会通过引用赋值。javascript仅通过引用分配对象,因此如果需要对象的副本,应使用
angular.copy
。
var items= "YourValue";
angular.copy(items, $scope.order.invoicewindow.items);
$scope.order.invoicewindow.items = angular.copy(items); //Or You can also use this style