JS数组中every(),filter(),forEach(),map(),some()方法学习笔记!转

ES5中定义了五种数组的迭代方法:every(),filter(),forEach(),map(),some()。

  每个方法都接受两个参数:要在每一项运行的函数(必选)和运行该函数的作用域的对象-影响this的值(可选);

  每个方法中的函数都会接受三个参数:该项的值(item),该项在数组的位置(index),数组对象本身(arr);

  目前支持的浏览器有:IE9+, Firefox1.5+, Firefox(Gecko)1.8+, Chrome, Opera, Safari.

  1.every()

    对数组中的每一项都进行操作,而且每一项都要符合函数的条件.才会返回ture,否则返回false。

1 var  num = [1,2,3,4,5];
2 var eve = num.every(function(item, index, arr){
3     return (item > 2);
4 });
5 console.log(eve);  //false

 

  2.some()

    这个方法与every()方法极为相似,但又有所不同,every要求每一项都要符合函数里面的条件,而some只要求有数组中的某一项符合即可,这点类似于或与和。返回的是布尔值,使用事例如下:

1 var  num = [1,2,3,4,5];
2 var eve = num.some(function(item, index, arr){
3     return (item > 2);
4 });
5 console.log(eve);  //true

  3.filter()

    filter就相当于一个过滤器,符合条件的留下,不符合条件的去除。返回符合条件的数组!案例如下:

var  num = [1,2,3,4,5];
var eve = num.filter(function(item, index, arr){
     return (item > 2);
});
console.log(eve);  //[3,4,5]

  4.forEach()

    forEach()方法可以使数组中的每个值都执行指定的函数,而且forEach()方法是唯一没有返回值的方法!案例如下:

var  num = [1,2,3,4,5];
var eve = num.forEach(function(item, index, arr){
       //执行你想要的操作
});

  5.map()

    map()方法同样可以使数组中的每一个值都执行指定的函数,并且返回得到的新的数组!案例如下:

var  num = [1,2,3,4,5];
var eve = num.map(function(item, index, arr){
    return item + 2;
});
console.log(eve);  //[3,4,5,6,7]
posted @   雪莉06  阅读(109)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
历史上的今天:
2021-06-30 安装less后报错:Module build failed: TypeError: this.getOptions is not a function at Object.
点击右上角即可分享
微信分享提示