迭代(遍历数组)forEach、filter、map、every

1.forEach用法(遍历)

 forEach用法:Array.forEach(function(数组当前项的值,数组当前项的索引值,数组本身){})

forEach()与some()的区别:forEach()找到第一个满足条件的元素后会继续遍历,some()找到第一个满足条件的元素后就终止循环,效率更高

var arr=[13,2,2,5]
var sum=0
// forEach用法:Array.forEach(function(数组当前项的值,数组当前项的索引值,数组本身){})
arr.forEach(function(value,index,Array){
console.log("第"+index+"个数组的值是"+value)
console.log("数组本身"+Array)
sum+=value
console.log('sum:'+sum)
})

 2.map()方法会得到一个新的数组并返回,forEach() 方法不会返回执行结果,而是undefined。

也就是说,forEach()会修改原来的数组。而map()方法会得到一个新的数组并返回。

arr.map(function(value){
return value
})
console.log('arrMap',arrMap)

 

3.filter用法:过滤符合条件的元素

filter返回的是一个数组,是把所有满足条件的元素返回来

// 2.filter用法
// filter用法:Array.filter(function(数组当前项的值,数组当前项的索引值,数组本身){})
var arr2=[33,52,12,22,55] var newArr2=arr2.filter(function(value,index,Array){ return value>20 }) console.log("newArr2:"+newArr2)

4.some用法:查找数组中是否有满足条件的元素

如果找到第一个满足条件的元素,则终止循环,不再查找,效率高

// 3.some()的用法:判断数组中有没有满足条件的元素,返回布尔值
            var arr3=[2,3,55,25,11,11]
            var flag=arr3.some(function(value,index,Array){
                return value>=25
            })
            console.log(flag)

 

posted @ 2022-12-30 15:33  小闫的姑娘  阅读(70)  评论(0编辑  收藏  举报