js 数组迭代方法,归并方法

1.js 提供了一些迭代的方法,包括every,some,filter,map,forEach.

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类似,不过是倒序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值