首页 > 代码库 > 数组的几种迭代方法和归并方法1

数组的几种迭代方法和归并方法1

迭代方法:
 every()  对数组中的每一项运行给定函数,如果该函数对每一项都返回true,则返回true。使用此方法 可确定数组中的所有项是否满足某一条件,类似于&&的含义。
   var arr = [1,2,3,4,5,6,7,8];

    var everyRes = arr.every(function(item,index,array){

        return (item>2);

    });
    alert(everyRes);
some()  对数组中的每一项运行给定函数,如果该函数对任一项返回true,则返回true。使用此方法确定数组中的所有项是否满足条件.类似于||的含义。

    var someRes = arr.some(function(item,index,array){

        return (item>2);

    });

    alert(someRes);
filter()  对数组中的每一项执行测试函数,并构造一个新数组,返回 true的项被添加进新数组。 如果某项返回 false,则新数组中将不包含此项    
    var filterRes = arr.filter(function(item,index,array){

        return (item>2);

    });

    alert(filterRes);

map()  对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
    var mapRes = arr.map(function(item,index,array){

        return (item*2);

    });

    alert(mapRes);

forEach()  没有返回值。
    forEach(){}
归并方法:
reduce()  接受传入的函数和作为归并基础的初始值(可选)。

  要传入的参数包含四个参数,前一个值、当前值、项的索引和数组对象(第一次迭代发生在第二项时,数组的第一项为第一个参数)。

    var arr = [1,2,3,4,5];
   var sum = arr.reduce(function(prev,cur,index,array){

       return prev + cur;

    });

    alert(sum);  //15

reduceRight()  和reduce()方法本质一样,区别就在于是从后向前开始遍历。

   var sum = arr.reduce(function(prev,cur,index,array){

       return prev + cur;

    });

    alert(sum);  //15

 

数组的几种迭代方法和归并方法1