js数组遍历some,foreach,map,filter,every对比

本文详细介绍了JavaScript中数组的六个常用方法:some、foreach、map、filter、every 和 reduce。通过具体的示例解释了每个方法的功能及使用场景,帮助读者更好地理解和运用这些方法。
1、  [...].some(ck)函数       ----      某个一个为true,则为true

对数组中每个元素执行一次ck函数,知道某个元素返回true,则直接返回true。如果都返回false,则返回false

检查整个数组中是否有满足ck函数的元素。

1、 var result = [1,5,3,6].some(  (v,i)  =>  (v>10) )      //所有元素都不满足,返回result = false
2、 var result = [10,5,30,60].some(  (v,i)  =>  (v<10) )      //有一个(多个)满足,返回result  = true
 
2、  [...].foreach(ck)函数       ----       循环而已

每个数组元素都执行一次ck函数,foreach函数无法用break跳出

1 [50, 25, 49].forEach( (v,i) => console.log(v) );    //50     25      49
 
3、 [...].map(ck)函数      ----         返回每个元素返回值的集合

每个数组元素都执行一次ck函数,最后返回每次元素执行ck函数后返回值的集合(数组)

1 var newArray = [50,30,40].map( (v,i) => v/10 )       //每个元素除以10,最后返回一个新数组 newArray = [5,3,4]
 
4、  [...].filter(ck)函数      ----        得到返回值为true的元素的集合

每个数组元素都执行一次ck函数,最后返回每次元素执行ck函数后返回值的为true的元素集合(数组)

var newArray = [50,2,60,4,53,15].filter( (v,i) => (v>10) )   //返回数组中大于10的元素新数组  newArray = [50,60,53,15]
 
5、[...].every(ck)函数     ----          某一个为false,则返回false            

每个数组元素都执行一次ck函数,直到某个元素执行函数ck返回false,则直接返回false,如果全部返回true,则返回true.

1 var result = [5,50,35,12,85].every( (v,i) => v<51 )  //返回有一个(多个)大于等于51,则返回 result = false
2 var result = [5,50,35,12,85].every( (v,i) => v<100 )  //全部大于51,则返回 result = true

 

6、[...].reduce(ck,init)      ----       依次执行ck(prv.next) 

 数组依次执行ck函数。

1 var result = [0,1,2,3]
2 restult.reduce((a,b)=> a+b,0)  // 返回 6

 

转载于:https://www.cnblogs.com/hsl-shiliang/p/7667761.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值