gpt4 book ai didi

javascript - 当我改变一个变量的值时,另一个变量也在改变

转载 作者:行者123 更新时间:2023-11-30 07:57:03 25 4
gpt4 key购买 nike

我通过使用以下方法从数据库中获取值并将输出数据插入两个变量,当我更改 $scope.contactRole 中的值时,“contactRoleForTrace”的值也在更改,但我不想改变它。那么你能告诉我我该怎么做吗?

var contactRoleForTrace = [];
$scope.getUserRoles = (function () {
//Method to get data from database
intakeAppFactory.getRoles(item)
.success(function (data) {
contactRoleForTrace = data;
$scope.contactRole = data;
}).error(function (data, status) {
$scope.error = "An Error has occured!";
});
});

最佳答案

目前您直接将 data 对象引用分配给 contactRoleForTrace & $scope.contactRole,因此任何更改都会发生在 $scope .contactRole/data 将自动更新 contactRoleForTrace 变量,因为它们绑定(bind)到相同的引用(data 对象)。

您应该使用 angular.copy 它将创建 data 对象的克隆,因此 contactRoleForTrace$scope.contactRole 将指向不同的引用。

contactRoleForTrace = angular.copy(data);

关于javascript - 当我改变一个变量的值时,另一个变量也在改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37319107/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com