全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

angular forEach方法遍历源码解读

angular中提供了forEach()方法用于遍历对象或数组,供大家参考,具体内容如下

function forEach(obj, iterator, context) {
 var key, length;
 if (obj) {
  if (isFunction(obj)) {
   for (key in obj) {
    // Need to check if hasOwnProperty exists,
    // as on IE8 the result of querySelectorAll is an object without a hasOwnProperty function
    if (key != 'prototype' && key != 'length' && key != 'name' && (!obj.hasOwnProperty || obj.hasOwnProperty(key))) {
     iterator.call(context, obj[key], key, obj);
    }
   }
  } else if (isArray(obj) || isArrayLike(obj)) {
   var isPrimitive = typeof obj !== 'object';
   for (key = 0, length = obj.length; key < length; key++) {
    if (isPrimitive || key in obj) {
     iterator.call(context, obj[key], key, obj);
    }
   }
  } else if (obj.forEach && obj.forEach !== forEach) {
    obj.forEach(iterator, context, obj);
  } else if (isBlankObject(obj)) {
   // createMap() fast path --- Safe to avoid hasOwnProperty check because prototype chain is empty
   for (key in obj) {
    iterator.call(context, obj[key], key, obj);
   }
  } else if (typeof obj.hasOwnProperty === 'function') {
   // Slow path for objects inheriting Object.prototype, hasOwnProperty check needed
   for (key in obj) {
    if (obj.hasOwnProperty(key)) {
     iterator.call(context, obj[key], key, obj);
    }
   }
  } else {
   // Slow path for objects which do not have a method `hasOwnProperty`
   for (key in obj) {
    if (hasOwnProperty.call(obj, key)) {
     iterator.call(context, obj[key], key, obj);
    }
   }
  }
 }
 return obj;
}

官方描述:

forEach方法可以遍历数组或对象,函数有三个参数为别为:value,key,obj。
1)、value value指当遍历的对象或数组元素当前的值
2)、 key 是对象属性的的key或者数组的索引
3)、 obj obj即被遍历的对象或数组本身

示例:

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# angular  # forEach  # angular.foreach 循环方法使用指南  # AngularJS ng-repeat指令中使用track by子语句解决重复数据遍历错误问题  # Angular ng-repeat遍历渲染完页面后执行其他操作详细介绍  # Angular ng-repeat 对象和数组遍历实例  # AngularJS入门(用ng-repeat指令实现循环输出  # angular.element方法汇总  # angularJS中$apply()方法详解  # 使用AngularJS来实现HTML页面嵌套的方法  # angularjs 处理多个异步请求方法汇总  # 解决angular的$http.post()提交数据时后台接收不到参数值问题的方法  # 遍历  # 具体内容  # 大家多多  # 为别  # result  # exists  # isFunction  # check  # hasOwnProperty  # amp  # call  # isArray  # querySelectorAll  # object  # prototype  # length  # class  # brush  # js 


相关文章: 制作农业网站的软件,比较好的农业网站推荐一下?  模具网站制作流程,如何找模具客户?  建站之星后台密码遗忘或太弱?如何重置与强化?  电商平台网站制作流程,电商网站如何制作?  深圳网站制作培训,深圳哪些招聘网站比较好?  如何快速生成凡客建站的专业级图册?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  如何在服务器上配置二级域名建站?  外贸公司网站制作,外贸网站建设一般有哪些步骤?  公众号网站制作网页,微信公众号怎么制作?  百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?  如何配置WinSCP新建站点的密钥验证步骤?  公司网站制作费用多少,为公司建立一个网站需要哪些费用?  安云自助建站系统如何快速提升SEO排名?  建站之星安装模板失败:服务器环境不兼容?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  如何选择建站程序?包含哪些必备功能与类型?  如何快速辨别茅台真假?关键步骤解析  如何访问已购建站主机并解决登录问题?  ,石家庄四十八中学官网?  早安海报制作网站推荐大全,企业早安海报怎么每天更换?  c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  网站制作企业,网站的banner和导航栏是指什么?  开心动漫网站制作软件下载,十分开心动画为何停播?  高性能网站服务器部署指南:稳定运行与安全配置优化方案  在线制作视频网站免费,都有哪些好的动漫网站?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  北京网站制作公司哪家好一点,北京租房网站有哪些?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  建站之星如何快速生成多端适配网站?  如何通过万网虚拟主机快速搭建网站?  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  如何获取免费开源的自助建站系统源码?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  已有域名和空间如何快速搭建网站?  建站主机选购指南与交易推荐:核心配置解析  官网建站费用明细查询_企业建站套餐价格及收费标准指南  香港服务器选型指南:免备案配置与高效建站方案解析  深圳网站制作平台,深圳市做网站好的公司有哪些?  沈阳制作网站公司排名,沈阳装饰协会官方网站?  南宁网站建设制作定制,南宁网站建设可以定制吗?  建站VPS能否同时实现高效与安全翻墙?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  小程序网站制作需要准备什么资料,如何制作小程序?  制作网站外包平台,自动化接单网站有哪些?  临沂网站制作企业,临沂第三中学官方网站?  代购小票制作网站有哪些,购物小票的简要说明?  网站制作需要会哪些技术,建立一个网站要花费多少?  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。