迭代方法

ES5为数组定义了5个迭代的方法。每个方法都接收两个参数:

1.every();
2.some();
3.filter();
4.map();
5.forEach();

1)要在每一项上运行的函数
2)运行该函数的作用域对象--影响this的值(可选)。
运行的函数会接受三个参数:
1.数组项的值
2.该项在数组中的位置
3.数组对象本身。

1.every()
对数组的每一项运行给定函数,如果该函数对每一项都返回true,则返回true。
  例:

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

2.some()

对数组的每一项运行给定函数,如果该函数对任一项返回true,则返回true。
    例:
    var numbers = [1,2,3,4,5,4,3,2,1];
    var someResult = numbers.some(function(item,index,array){
        return (item > 2);
    })
    console.log(someResult);  //true
3.filter()
对数组的每一项运行给定函数,返回该函数会返回true的项组成的数组。
    var numbers = [1,2,3,4,5,4,3,2,1];
    var filterResult = numbers.filter(function(item,index,array){
        return (item > 2);
    })
    console.log(filterResult);  //[3,4,5,4,3]

4.map()

对数组的每一项运行给定函数,返回每次函数调用的结果组成的数组。
    var numbers = [1,2,3,4,5,4,3,2,1];
    var mapResult = numbers.map(function(item,index,array){
        return item*2;
    })
    console.log(mapResult);  //[2,4,6,8,10,8,6,4,2]

5.forEach()

对数组的每一项运行给定函数。该方法没有返回值。
    var numbers = [1,2,3,4,5,4,3,2,1];
    numbers.forEach(function(item,index,array){
        console.log(item); 
    })

推荐阅读更多精彩内容

  • ECMAScript 5 为数组定义了 5 个迭代方法。每个方法都接收两个参数:要在每一项上运行的函数和(可选的)...
    alex夏夜阅读 121评论 0 0
  • 前面写过一篇文章是关于js遍历数据的,这段时间看一篇关于JavaScript中的迭代方法感觉不错也挺实用的,给大家...
    hunter97阅读 133评论 0 0
  • ES5为数组定义了5个迭代的方法。每个方法都接收两个参数:1)要在每一项上运行的函数2)运行该函数的作用域对象--...
    h5溧水大表哥阅读 99评论 1 2
  • ES5定义了五个迭代方法,每个方法都接收两个参数:要在每一项上运行的函数和运行该函数的作用域对象(可选的),作用域...
    抱歉不在阅读 61评论 0 3
  • ES5为数组定义了5个迭代的方法: 运行的函数会接受三个参数:1)数组项的值 2)该项在数组中的位置 3)数组对象...
    Mars_宏阅读 152评论 2 3