angularJS 修改对象B与传值对象A指向同一个内存区 怎么让他们不再绑定?

来源:互联网 发布:野火网络 编辑:程序博客网 时间:2024/06/15 15:06
方法一:
$scope.eShowUpdateRole = function(role){    $scope.changeOrAddRole = {};//添加角色 、修改角色 的对象    $scope.changeOrAddRole = JSON.parse(JSON.stringify(role));
}
//这里的作用就是把传值对象A role转换成字符串 
JSON.stringify(role)
,那么就会创建字符串内存区存放,再转换成对象
JSON.parse()相当于新创建一个对象内存区存放 生成的
 $scope.changeOrAddRole对象B 和 传值对象A role就不是同一个内存区 ,不再关联
方法二:
对象的字段一个一个赋值 这样就会把区别内存地址的字段$$hashKey:"object:96"去掉
$scope.changeOrAddRole.name = role.name;
$scope.changeOrAddRole.id = role.id;

阅读全文
0 0
原创粉丝点击