JavaScript数组的5种迭代方法


Posted in Javascript onSeptember 29, 2017

ES5为数组定义了5个迭代方法。每种方法都接收两个参数。要在每一项上运行的函数和(可选的)运行该函数的作用域对象--影响this的值。//其中(可选的)这个参数暂时未遇到过。

其中,函数都接收三个参数(数组中的每一项、每一项的索引值、数组对象本身)。

下面是5中方法的介绍:

every() : 对数组中的每一项执行函数,如果每一项都返回 true ,则该方法返回 true。

some():     对数组中的每一项执行函数,只要有一项返回了 true ,则该方法返回 true。

filter():       对数组中的每一项执行函数,把里面返回 true 的项,组成一个数组返回。

forEach()  对数组中的每一项执行函数,没有返回值。类似于for循环。

map()       对数组中的每一项执行函数,返回(处理后的)每一项。

以上5种方法,都不会改变数组本身。

forEach和map的比较:

var arr = [1,2,3,4,5];
  //every() filter() some() forEach() map()
  var res = arr.every(function(i,index,o){
    return i>2;
  });
  console.log(arr); //[1,2,3,4,5]
  console.log(res); //false

  var some = arr.some(function (i, k, l) {
    return i>2;
  });
  console.log(arr);//[1,2,3,4,5]
  console.log(some);//true

  var filter = arr.filter(function (i, k, l) {
    return i>2;
  });
  console.log(arr);//[1,2,3,4,5]
  console.log(filter);//[3,4,5]

  var forEach = arr.forEach(function (i, k, l) {
    return i>2;
  });
  console.log(arr);//[1,2,3,4,5]
  console.log(forEach);//undefined

  var map = arr.map(function (i, k, l) {
    return i>2;
  });
  console.log(arr);//[1,2,3,4,5]
  console.log(map);//[false,false,true,true,true]

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

Javascript 相关文章推荐
简单的js分页脚本
May 21 Javascript
JavaScript中Object和Function的关系小结
Sep 26 Javascript
js截取字符串的两种方法及区别详解
Nov 05 Javascript
js图片翻书效果代码分享
Aug 20 Javascript
基于JS如何实现类似QQ好友头像hover时显示资料卡的效果(推荐)
Jun 09 Javascript
浅谈angular2的http请求返回结果的subcribe注意事项
Mar 01 Javascript
jq checkbox 的全选并ajax传参的实例
Apr 01 Javascript
详解webpack模块化管理和打包工具
Apr 21 Javascript
Bootstrap开发中Tab标签页切换图表显示问题的解决方法
Jul 13 Javascript
vuejs+element UI点击编辑表格某一行时获取内容填入表单的示例
Oct 31 Javascript
JavaScript生成一个不重复的ID的方法示例
Sep 16 Javascript
vue+layui实现select动态加载后台数据的例子
Sep 20 Javascript
微信小程序之GET请求的实例详解
Sep 29 #Javascript
js仿微信抢红包功能
Sep 25 #Javascript
给vue项目添加ESLint的详细步骤
Sep 29 #Javascript
微信小程序 POST请求的实例详解
Sep 29 #Javascript
微信小程序之数据缓存的实例详解
Sep 29 #Javascript
微信小程序getPhoneNumber获取用户手机号
Sep 29 #Javascript
微信小程序中setInterval的使用方法
Sep 29 #Javascript
You might like
php中去除所有js,html,css代码
2010/10/12 PHP
php处理斐波那契数列非递归方法
2012/02/04 PHP
解读PHP的Yii框架中请求与响应的处理流程
2016/03/17 PHP
php session的应用详细介绍
2017/03/22 PHP
js 浮动层菜单收藏
2009/01/16 Javascript
javascript学习笔记(十三) js闭包介绍(转)
2012/06/20 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
2013/04/15 Javascript
基于JavaScript实现继承机制之调用call()与apply()的方法详解
2013/05/07 Javascript
浅谈JavaScript中setInterval和setTimeout的使用问题
2015/08/01 Javascript
JavaScript获取浏览器信息的方法
2015/11/20 Javascript
JavaScript事件 "事件对象"的注意要点
2016/01/14 Javascript
浅析jQuery 3.0中的Data
2016/06/14 Javascript
JS使用JSON作为参数实例分析
2016/06/23 Javascript
javascript将中国数字格式转换成欧式数字格式的简单实例
2016/08/02 Javascript
原生js实现键盘控制div移动且解决停顿问题
2016/12/05 Javascript
vue-resource请求实现http登录拦截或者路由拦截的方法
2018/07/11 Javascript
ajaxfileupload.js实现上传文件功能
2019/04/19 Javascript
JS数组splice操作实例分析
2019/10/12 Javascript
[02:10]三分钟回顾完美世界城市挑战赛
2019/01/24 DOTA
详解关于Django中ORM数据库迁移的配置
2018/10/08 Python
用pycharm开发django项目示例代码
2019/06/13 Python
树莓派使用python-librtmp实现rtmp推流h264的方法
2019/07/22 Python
python遍历文件目录、批量处理同类文件
2019/08/31 Python
PyTorch里面的torch.nn.Parameter()详解
2020/01/03 Python
python文件编写好后如何实践
2020/07/07 Python
分布式数据库需要考虑哪些问题
2013/12/08 面试题
创业计划书——互联网商机
2014/01/12 职场文书
助理政工师申报材料
2014/06/03 职场文书
机关作风建设自查报告及整改措施
2014/10/21 职场文书
2016新年慰问信范文
2015/03/25 职场文书
社区文明创建工作总结2015
2015/04/21 职场文书
董存瑞观后感
2015/06/11 职场文书
《小乌鸦爱妈妈》教学反思
2016/02/19 职场文书
《小蝌蚪找妈妈》教学反思
2016/02/23 职场文书
2019假期福利管理制度!
2019/07/15 职场文书
pyqt5打包成exe可执行文件的方法
2021/05/14 Python