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。而且这个方法还可以添加对个对象做为参数,给第目标对象添加属性,即方便又简单  -。-

本兽在一些封装好的插件的源码里看到这个方法也用到挺多,不过总觉得只有自己动手写代码用过了,才能更好的体会到这些方法的好处,仅仅是看下了解下就觉得自己理解了的这种,是不能真正的学到的,这两种学习的具体体会在用到代码的时候就知道了...建议大家都动手操作。

最新文章

  1. gitlab的搭建和linux客户端的连接
  2. REST四种请求(get,delete,put,post) 收集整理 之一
  3. ubuntu忘记密码,忘记root密码的解决方法
  4. RPI-Wireless-Hotspot
  5. pythond对象、异常、反射的学习笔记
  6. mysl lock table read
  7. JVM性能监控与优化笔记(CPU)
  8. paip.jdk1.4 1.5(5.0) 1.6(6.0) 7.0 8.0特点比较与不同
  9. Oracle 去掉重复字符串
  10. 11g默认审计选项
  11. Natas Wargame Level 2 Writeup 与目录泄露(强制访问)
  12. ubuntu上安装apache2+mysql+php5-fpm(PHP5 - FastCGI Process Manager)
  13. [UWP]实现Picker控件
  14. 解决Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project autotest_fchtgl: Compilation failure的方法
  15. 微信开发之SVN提交代码与FTP同步到apache的根目录
  16. python select.select模块通信全过程详解
  17. select 下拉选择自动到textarea框
  18. TreeMap中文排序,TreeMap倒序输出排列
  19. 修改jupyter notebook主题、字体和启动路径
  20. 《区块链生存训练2.0》PDF

热门文章

  1. Java 密码扩展无限制权限策略文件
  2. shell 使用
  3. 解决.VS2012+EF5.0开发的网站在window server2003上无法部署的问题
  4. 【分布式协调器】Paxos的工程实现-cocklebur选举
  5. WPF 3D模型 3D场景
  6. 通过Ajax实现增删改查
  7. grub.conf文件参数详解
  8. 5-touch 命令总结
  9. window 安装redis服务、卸载redis服务和启动redis服务
  10. HTML5+AJAX原生分块上传文件的关键参数设置