js迭代函数

every():对数组中的每一项运行给定函数,如果该函数对每一项都返回true,则返回true。
filter():对数组中的每一项运行给定函数,返回该函数会返回true 的项组成的数组。
forEach():对数组中的每一项运行给定函数。这个方法没有返回值。
map():对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
some():对数组中的每一项运行给定函数,如果该函数对任一项返回true,则返回true.
every主要是用于判断一个素组中的值是否符合某个标准。必须是每个值都符合才会返回true。否则返回false.
而some()函数只需要有一个值返回的是true就会返回true.
例子如下:
var numbers = [1,2,3,4,5,4,3,2,1];
var everyResult = numbers.every(function(item, index, array){
return (item > 2);
});
alert(everyResult); //false
var someResult = numbers.some(function(item, index, array){
return (item > 2);
});
alert(someResult); //true

2.filter,filter返回的是一个符合某种条件的数组。
例如:数组number = [1,2,1,3,5,3,4,9,6,9];
var result = number.filter(function(item,index,array){
return (item>5);
});
alert(result); /[9,6,9];
3.map,map和filter函数类似,同样是hi返回的是一个数组。不过,这个数组的每一项都是在原始数组中的对应项上运行传入函数的结果。例如:
var numbers = [1,2,3,4,5,6,7];
var mapresult = numbers.map(function(item,index,array){
return item*2;
});
alert(mapresult);//[2,4,6,8,10,12,14];

4.forEach()
顾名思义,是一个循环数组的方法。

5.归并
5.1reduce(),reduceRight()。
迭代i数组中的所有值,返回一个按条件计算的最终值。
reduce是从数组的逐个遍历
到最后。而reduceRight()则从数组的最后一项开始,向前遍历到第一项。
例如:
var values = [1,2,3,4,5];
var sum = values.reduce(function(prev, cur, index, array){
return prev + cur;
});
alert(sum); //15

第一次执行回调函数,prev 是1,cur 是2。第二次,prev 是3(1 加2 的结果),cur 是3(数组
的第三项)。这个过程会持续到把数组中的每一项都访问一遍,最后返回结果。
resuceRight()函数和reduce类似,不过是倒序。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一章: JS简介 从当初简单的语言,变成了现在能够处理复杂计算和交互,拥有闭包、匿名函数, 甚至元编程等...
    LaBaby_阅读 1,709评论 0 6
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,275评论 0 4
  • 第三章 基本概念 3.1 语法 ECMAScript标识符一般采用驼峰大小写格式,也就是第一个字母小写,剩下的每个...
    小雄子阅读 599评论 0 1
  • Chapter 5 引用类型 Object类型 创建Object实例new Object()var person ...
    云之外阅读 402评论 0 0
  • 你未看此花时,此花与汝同归于寂; 你来看此花时,则此花颜色一时明白起来。 春意初来,水波未兴。难得与小朋友日日守在...
    青楹阅读 289评论 0 2