JavaScript数组的5种迭代方法

 更新时间:2017年09月29日 14:45:35   作者:李柳成  
这篇文章主要为大家详细介绍了JavaScript数组的5种迭代方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

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]

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

相关文章

  • 微信小程序图片右边加两行文字的代码

    微信小程序图片右边加两行文字的代码

    这篇文章主要介绍了微信小程序图片右边加两行文字的代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • JavaScript在IE中“意外地调用了方法或属性访问”

    JavaScript在IE中“意外地调用了方法或属性访问”

    FF是正常的,IE报“意外地调用了方法或属性访问”。
    2008-11-11
  • javascript中innerHTML 获取或替换html内容的实现代码

    javascript中innerHTML 获取或替换html内容的实现代码

    这篇文章主要介绍了javascript中innerHTML 获取或替换html内容,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • js实现touch移动触屏滑动事件

    js实现touch移动触屏滑动事件

    在开始描述touch事件之前,需要先描述一下多触式系统中特有的touch对象(android和iOS乃至nokia最新的meego系统都模拟了类 似的对象)。这个对象封装一次屏幕触摸,一般来自于手指。它在touch事件触发的时候产生,可以 通过touch event handler的event对象取到
    2015-04-04
  • Javascript 运动中Offset的bug解决方案

    Javascript 运动中Offset的bug解决方案

    这篇文章主要介绍了Javascript 运动中Offset的bug解决方案,需要的朋友可以参考下
    2014-12-12
  • 重写javascript中window.confirm的行为

    重写javascript中window.confirm的行为

    javascript中window.confirm这个方法很好用,可以弹出一个确认对话框.但有一个问题是,它默认的情况下,将选中那个"确定"按钮,当用户有意无意的在键盘回车,就是说按下Enter键的时候,就会自动返回true。在很多时候其实我们不希望这样
    2012-10-10
  • JavaScript变量提升和严格模式实例分析

    JavaScript变量提升和严格模式实例分析

    这篇文章主要介绍了JavaScript变量提升和严格模式,结合实例形式分析了javascript变量提升和严格模式的原理及相关操作注意事项,需要的朋友可以参考下
    2019-01-01
  • Bootstrap.css与layDate日期选择样式起冲突的解决办法

    Bootstrap.css与layDate日期选择样式起冲突的解决办法

    这篇文章主要为大家详细介绍了BootStrap.css与layDate日期选择样式起冲突的解决办法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • JS数组求和的几种常见方法总结

    JS数组求和的几种常见方法总结

    js的数组与我们日常生活中的数组一样,都是会进行求和计算的,下面这篇文章主要给大家介绍了关于JS数组求和的几种常见方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • js计算两个时间差 天 时 分 秒 毫秒的代码

    js计算两个时间差 天 时 分 秒 毫秒的代码

    这篇文章主要介绍了js计算两个时间差 天 时 分 秒 毫秒的实例代码,本文给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2019-05-05

最新评论