浅析angular.forEach

这个forEach还是比较简单的,angular.forEach有三个参数,前两个参数是必须的,第三个是可选的;
使用方法:

  1. obj(对象或者数组):被迭代对象
  2. iterator(函数):迭代器函数
  3. context(对象):在iterator中被指定为上下文的对象,也就是说在iterator里面的this指的就是此处的context

返回值:对象或者数组,返回的是前面第一个参数obj的引用。
举个例子

var values = {name: 'misko', gender: 'male'};
var log = [];
angular.forEach(values, function(arg1, arg2, arg3) {
   this.push(arg1 + ': ' + arg2);
   console.log(arg3);
}, log);
 console.log(log);

这里forEach传递了三个参数,先说说里面的第三个参数log,将forEach的上下文指定为log,这样在第二个参数function里面的this指的就是log,如果不填写第三个参数的话,里面的this指向的就是window。
还要说明的是这里面的第二个参数function,function里面最多可以填写三个参数,arg1就是我们常见的key,即此处的name/gender,arg2就是我们常见的value,即此处的misko/male,一般不用第三个参数arg3,如果非要第三个参数的话,arg3的值就是此处的对象values。
angular.forEach

发表评论

电子邮件地址不会被公开。 必填项已用*标注