angular.copy() 深拷贝
来源:互联网 发布:为知笔记 开源 编辑:程序博客网 时间:2024/05/21 17:10
因为项目中需要拷贝,查阅angularjs API文档,发现对angular.copy() 的解释:
复制一个对象或者一个数组(好吧,万物皆对象,数组也是一个对象)。
1> 如果省略了destination,一个新的对象或数组将会被创建出来;
2> 如果提供了destination,则source对象中的所有元素和属性都会被复制到destination中;
3> 如果source不是对象或数组(例如是null或undefined), 则返回source;
4> 如果source和destination类型不一致,则会抛出异常。 注意:这个是单纯复制覆盖,不是类似继承。
使用方法:
angular.copy(source, [destination]);
参数:
返回值:
返回复制或更新后的对象
<!DOCTYPE html><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="http://apps.bdimg.com/libs/angular.js/1.2.16/angular.min.js"></script> </head> <body ng-app="copyApp"> <div ng-controller="CopyController"> <form novalidate class="simple-form"> 姓名: <input type="text" ng-model="user.name" /><br /> 年龄:<input type="number" ng-model="user.age" /><br /> 邮箱: <input type="email" ng-model="user.email" /><br /> 性别:<input type="radio" ng-model="user.gender" value="male" /> 男 <input type="radio" ng-model="user.gender" value="female" /> 女 <br /> <button ng-click="reset()">重置</button> <button ng-click="update(user)">保存(拷贝)</button> </form> <pre>form = {{user | json}}</pre> <pre>master = {{master | json}}</pre> </div> <script> angular.module('copyApp', []) .controller('CopyController', ['$scope', function($scope) { $scope.master = {}; $scope.update = function(user) { $scope.master = angular.copy(user); console.log($scope.master); }; $scope.reset = function() { angular.copy($scope.user, $scope.master); console.log($scope.master);// Object { } console.log($scope.user); //undefined }; $scope.reset(); }]); </script> </body></html>
—-效果图——
3 0
- angular.copy() 深拷贝
- 日常总结 之 angular copy 深拷贝
- angular copy深度拷贝
- angular.copy
- angular.copy()
- angular.copy
- 关于copy, mutableCopy, 浅拷贝,深拷贝
- 深拷贝,浅拷贝与copy,strong
- Copy(浅拷贝)、MutableCopy(深拷贝)
- Copy mutableCopy 深拷贝、浅拷贝
- copy(浅拷贝) mutableCopy(深拷贝)
- 浅拷贝 深拷贝 copy mutableCopy
- 浅拷贝&深拷贝|| MutableCopy& Copy
- Python:深拷贝,浅拷贝import copy
- 深拷贝deepcopy与浅拷贝copy
- 浅拷贝和深拷贝(shallow copy VS deep copy )
- Shallow Copy(影子拷贝) VS Deep Copy(深拷贝)
- 深拷贝与浅拷贝(Deep Copy and Shallow Copy)
- 如何开发板上移植udev并实现移动设备的自动挂载
- 史上最简单的SpringCloud教程 | 第十篇: 高可用的服务注册中心
- 浅拷贝和深拷贝
- linux源-yum的使用介绍
- WifiRemoteStationManager中速率控制算法详解
- angular.copy() 深拷贝
- JAVA多线程—Exchanger-线程间交换数据
- c++实验四——输出完数
- JQ小坑on
- 全排列算法及实现
- 1 Springboot中使用redis,自动缓存、更新、删除
- 前端构建之gulp与常用插件
- Android Input 事件系统Kitkat
- 投影纹理映射(Projective Texture Mapping)