Angular - - angular.forEach、angular.extend
angular.forEach
调用迭代器函数取每一项目标的集合,它可以是一个对象或数组。迭代器函数与迭代器(value、key)一起调用,其中值是一个对象属性或数组元素的值,而数组元素是对象属性的关键或数组元素索引。为函数指定一个可选的上下文。
格式:angular.forEach(obj,iterator,[context]);
obj:遍历的对象
iterator:迭代器
[content]: 对象为迭代器函数的上下文(this)
使用代码:
var arr = [{ name: "A", age: "1" }, { name: "B", age: "2" }, { name: "C", age: "3" }];
var _arr = [];
angular.forEach(arr, function (item, index) {
this.push(item.name);
}, _arr);
//_arr = ["A","B","C"]
推荐使用:
var arr = [{ name: "A", age: "1" }, { name: "B", age: "2" }, { name: "C", age: "3" }];
var _arr = [];
angular.forEach(arr, function (item, index) {
_arr.push(item.name);
});
//_arr = ["A","B","C"]
item指的是循环的集合中的对象,index是当前item的索引值。
在项目开发过程中,用到遍历是很正常且平常的事,那么angular也给我们提供了这个api -- angular.forEach。这个和jquery的的.each()方法相似,但貌似他比jquery的.each多了个参数。
angular.extend
复制src对象中的属性到dst对象中。你可以指定多个源对象。
格式:angular.extend(dst,src)
dst:目标对象
src:copy源对象(>=1)
使用代码:
var dst = { name: "Any" };
var src_one = { age: "18" };
var src_two = { sex:"male"};
angular.extend(dst,src_one,src_two);
//dst:{name: "Any", age: "18",sex:"male"} src_one={age:"18"} src_two = {sex:"male"}
这个方法主要是用对象给对象添加属性的,比如我们定义了个对象,然后需要在后面的代码对这个对象进行添加别的对象的属性作为自己的属性,然后这时候我们就需要用到angular.extend。而且这个方法还可以添加对个对象做为参数,给第目标对象添加属性,即方便又简单
Angular - - angular.forEach、angular.extend的更多相关文章
- AngularJs angular.forEach、angular.extend
angular.forEach 调用迭代器函数取每一项目标的集合,它可以是一个对象或数组.迭代器函数与迭代器(value.key)一起调用,其中值是一个对象属性或数组元素的值,而数组元素是对象属性的关 ...
- angular.extend、angular.$watch、angular.bootstrap
1.angular.extend:依次将第二个参数及后续的参数的第一层属性(不管是简单属性还是对象)拷贝给第一个参数的第一层属性,即如果是对象,则是引用的是同一个对象,并返回第一个参数对象. 直接上代 ...
- 深入理解jQuery、Angular、node中的Promise
最初遇到Promise是在jQuery中,在jQuery1.5版本中引入了Deferred Object,这个异步队列模块用于实现异步任务和回调函数的解耦.为ajax模块.队列模块.ready事件提供 ...
- angular之$watch、$watchGroup、$watchCollection
1,原型:$watch: function(watchExp, listener, objectEquality, prettyPrintExpression){}: 2,参数:watchExp(必须 ...
- 【原创教程】一、Angular教程系列之认识angular
为什么我会准备写这个原创教程系列? 写下这个标题之后,看着屏幕上空白的内容区,不知从何下手,想说的似乎有很多,似乎又没啥说的.有时候就会陷入这种矛盾中,有时候就是这样,于是,我下定决心这一次一定要把这 ...
- angular4.0 安装最新版本的nodejs、npm、@angular/cli的方法
在使用ng项目的ui框架时,比如ng-zorro.angular Material,需要安装最新版本的@angular/cli: 配置ng-zorro框架 ng-zorro官网:https://ng. ...
- Vue-起步篇:Vue与React、 Angular的区别
毋庸置疑,Vue.React. Angular这三个是现在比较火的前端框架.这几个框架都各有所长,选择学习哪种就得看个人喜好或者实际项目了.相比之下, Vue 是轻量级且容易学习掌握的. 1.Vue和 ...
- HBuilder支持jquery、zepto、angular、ext、dojo 等js框架的提示吗
HBuilder有通行的js扫描分析提示,大部分js库都可以方便的提示.但js是一门超级灵活的语言,通行分析有时分析的不够完美,如果对框架做单独优化配置,可以有更好的提示.DCloud官方对jquer ...
- Web端主流框架,jquery、angular、react、vue
不得不说,前端技术发展非常迅速,时不多久就有一个新的东西冒出来,并且迅速膨胀发展,让旁观者眼花缭乱,让开发者目眩神迷,但总体上来说,这波互联网大浪潮带动了前端技术的大发展,给曾经那些苦苦挣扎于DOM操 ...
随机推荐
- 一个有意思的 hta 程序 (html application)
哈哈,刚才同事给我讲了一个hta 程序,他自己说最近在学html5 开发坦克大战,不错,这种好奇心, 好学的精神值得我这个程序员学习,感觉他的视野面比我这个程序员还广,有点小惭愧. 什么是hta 呢? ...
- 中国天气网 JSON接口的城市编码解析及结果
最近在弄一个Android应用,其中一个功能是天气情况展示,准备使用google的天气API服务(http://www.google.com/ig/api?hl=zh-cn&weather=, ...
- Android-----View绘制流程以及invalidate()等相关方法分析 .
引自:http://blog.csdn.net/qinjuning/article/details/7110211 前言: 本文是我读<Android内核剖析>第13章----View工作 ...
- CentOS 6.2 安装vsftpd 服务器(转)
CentOS 6.2 安装vsftpd 服务器 本人的CentOS 6.2是安装在win 2008 R2 server 的 Hyper-V 虚拟机中.centos使用光盘安装,以最小模式安装,完成后用 ...
- vim的复制粘贴小结(转)
原文地址:http://lsong17.spaces.live.com/blog/cns!556C21919D77FB59!603.entry 内容: 用vim这么久 了,始终也不知道怎么在vim中使 ...
- Linux 互斥锁的实现原理(pthread_mutex_t)
本文参考--http://www.bitscn.com/os/linux/201608/725217.html 和http://blog.csdn.net/jianchaolv/article/det ...
- Shortest Path
Shortest Path Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)T ...
- Django之路:简介以及环境
(sudo) pip install Django 或者 (sudo) pip install Django==1.6.10 或者 pip install Django==1.7.6 Windows ...
- Modbus RTU 通信工具设计(转)
Modbus RTU 通信工具设计 Modbus 是一个工业上常用的通讯协议.一种通讯约定. ModBus 协议是应用层报文传输协议(OSI 模型第7层),它定义了一个与通信层无关的协议数据单元(PD ...
- hadoop第一篇
1 hadoop整体架构 2 各组件关系 hdfs只是一个存储空间,他的完整名字是分布式文件系统.有名可知他的作用了. hbase是一个内存数据库,简单点说hbase把表啊什么的存在hdfs上.