`
boyitech
  • 浏览: 85512 次
  • 性别: Icon_minigender_1
  • 来自: 南通
社区版块
存档分类
最新评论
阅读更多
angular.copy
描述:
    复制一个对象或者一个数组(好吧,万物皆对象,数组也是一个对象)。
    如果省略了destination,一个新的对象或数组将会被创建出来;
     如果提供了destination,则source对象中的所有元素和属性都会被复制到destination中;
     如果source不是对象或数组(例如是null或undefined), 则返回source;
     如果source和destination类型不一致,则会抛出异常。
    
使用方法:
    angular.copy(source, [destination]);
 
参数详解: 
     
Param Type

Details

source *

被copy的对象. 可以使任意类型, 包括null和undefined.

destination
(optional)
ObjectArray

copy去的目的地. 可以省略, 如果不省略, 其必须和source是同类型.

 
返回值:
    返回复制或更新后的对象
 
示例代码:
<!DOCTYPE HTML>
<html ng-app="copyExample">
<head>
	<script src="angular.min.js"></script>
</head>

<body>
<div ng-controller="ExampleController">
	<form novalidate class="simple-form">
		Name: <input type="text" ng-model="user.name" /><br />
		E-mail: <input type="email" ng-model="user.email" /><br />
		Gender: <input type="radio" ng-model="user.gender" value="male" />male
		<input type="radio" ng-model="user.gender" value="female" />female<br />
		<button ng-click="reset()">RESET</button>
		<button ng-click="update(user)">COPY</button>
	</form>
	<pre>form = {{user | json}}</pre>
	<pre>master = {{master | json}}</pre>
</div>

<script>
 angular.module('copyExample', [])
   .controller('ExampleController', ['$scope', function($scope) {
     $scope.master= {};

     $scope.update = function(user) {
       // 复制user对象给master
       $scope.master= angular.copy(user);
     };

     $scope.reset = function() {
       // 复制user中的属性给master(首先会自动清除master中的属性)
       angular.copy($scope.master, $scope.user);
     };

     $scope.reset();
   }]);
</script>

</body>	
</html>
 
0
0
分享到:
评论

相关推荐

    angular.copy实例

    **Angular.copy 实例详解** 在 AngularJS 中,`angular.copy` 是一个非常实用的工具函数,用于创建对象或数组的深拷贝。这个函数对于数据的隔离、模型的复制以及在应用中保持数据独立性至关重要。本文将深入探讨 `...

    浅谈angular.copy() 深拷贝

    因为项目中需要拷贝,查阅angularjs API文档,发现对angular.copy() 的解释: 复制一个对象或者一个数组(好吧,万物皆对象,数组也是一个对象)。 1&gt; 如果省略了destination,一个新的对象或数组将会被创建出来;...

    利用angular.copy取消变量的双向绑定与解析

    众所周知AngularJS的双向绑定在表单应用中强大又方便,...Angular提供的angular.copy的方法可以实现解除双向绑定。所以这篇文章就来给大家详细的介绍下angular.copy,有需要的朋友们可以参考借鉴,下面来一起看看吧。

    AngularJS API之copy深拷贝详解及实例

    copy.age = 31; // 修改副本 console.log(original); // 输出:{name: 'John', age: 30},原对象未受影响 var master = {name: 'Master', email: 'master@example.com'}; var user = angular.copy(master); // 副本...

    AngularJS 中文手册

    Angular 命名空间 ng (核心模块) 这个模块是默认提供的,它包含了AngularJS的核心组件。 Directives 这些核心指令集可用于你的AngularJS应用的模板...例如:angular.copy(), angular.equals(), angular.element()...

    angular.extend方法的具体使用

    如果想要保存一个对象的状态,除了可以调用angular.copy()方法外,还可以把一个空对象{}作为第一个对象传入。 但要注意的是,angular.extends()是非递归的,也就是说:如果扩展的属性中有对象,那么二者同时引用...

    AngularJs 参考手册PDF

    - `angular.copy()`: 实现数组或对象的深度拷贝。 - `angular.forEach()`: 对对象或数组进行迭代。 - `angular.isArray()`、`angular.isDate()`、`angular.isDefined()` 等: 用于检测特定类型或状态。 - `angular....

    AngularJS参考手册

    - **angular.copy()**:深拷贝对象或数组。 - **angular.forEach()**:遍历对象或数组。 - **angular.extend()**:扩展对象。 ##### 5. **类型检测API** - **angular.isArray()**:判断是否为数组。 - **angular....

    Angular和Vue双向数据绑定的实现原理(重点是vue的双向绑定)

    在Angular和Vue这两个流行的前端框架中,这一机制是核心功能之一。本文将深入探讨Vue的双向数据绑定实现原理,同时也简要提及Angular的实现方式。 首先,我们需要理解JavaScript对象中的数据属性和访问器属性。数据...

    Angular工具方法学习

    `var c = angular.copy(a)`会创建一个新的对象`c`,与`a`有相同的属性,但不会相互影响。这对于数据模型的隔离和防止意外修改非常有用。 3. `angular.extend`: 该方法用于合并或“继承”对象的属性。`var c = ...

    浅谈angularJs函数的使用方法(大小写转换,拷贝,扩充对象)

    我们将重点介绍三个函数:大小写转换(angular.uppercase()和angular.lowercase())、拷贝(angular.copy())和扩充对象(angular.extend())。 首先,大小写转换的函数允许开发者在需要时快速将字符串转换为大写或...

    angularJS深拷贝详解

    从上述代码中可以看出,当使用angular.copy()方法深拷贝了一个对象给变量b之后,对b所做的修改并不会影响到a,这说明b是a的一个深拷贝。 AngularJS深拷贝的使用场景非常广泛,特别是在AngularJS项目中进行数据处理...

    基于angular.js开发的单页面网站(构建版本).zip

    项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松copy复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全栈开发),有任何使用问题欢迎随时与我联系,我会及时为您解惑,...

    AngularJs导出数据到Excel的示例代码

    var data = angular.copy($scope.pageData.list); var arr = []; var type = null; var amountIN = 0; var amountOUT = 0; angular.forEach(data, function(item) { // 根据业务逻辑处理数据 if (item.is...

    AngularJS 中文API参考手册

    - `angular.copy()`:这个方法可以深拷贝数组或对象,用于创建原始对象的副本。 - `angular.forEach()`:这是一个遍历对象或数组的迭代函数,常用于处理数据。 - `angular.isArray()`, `angular.isDate()`, `angular...

    AngularJS $modal弹出框实例代码

    下面给大家说下$modal拥有一个方法:open,该方法的...resolve:定义一个成员并将他传递给$modal指定的控制器,相当于routes的一个reslove属性,如果需要传递一个objec对象,需要使用angular.copy() backdrop:控制背

Global site tag (gtag.js) - Google Analytics