1find()用于查找数组中第一个满足条件的元素,并返回,如果没有这样的元素则返回undefined
语法:数组名.find(function(item,index,arr){
return 条件
})
let arr=[5,7,9,10,9]
let ret=arr.find(function(item,index){
// console.log(item,index);
return item >5//查找的是第一个满足条件的元素
})
console.log(ret); //7
2forEach()遍历数组不返回,用于不改变值,经常用于查找打印输出值
语法: 数组.forEach(function(item,index,arr))
<script>
let arr=[10,20,40,20,30]
// for(let i=0;i<arr.length;i++){
// arr[i]
// }
// forEach()用于对数组进行遍历
// 语法:
// 数组.forEach(function(item,index,arr))
// item 每次遍历的元素的值
// index每次遍历的元素的下标
let n=arr[0]
arr.forEach((item,index)=>{ //对数组arr进行遍历
console.log(item,index);
if(item>n){
n=item //获得最大值
}
})
console.log(n);
</script>
3reduce()用于对数组进行遍历,并统计满足条件元素的元素的个数或者累加
数组.reduce(function(pre,item,index,arr){},初始值)
// 求偶数元素的个数
let arr = [1, 3, 19, 15, 20]
let num= arr.reduce(function(pre,item){
if(item%2==1){
return pre
}else{
return pre+1
}
},0)
console.log(num);
传入了参数0,从数组的0号元素开始计算
// 求和
let arr = [1, 3, 19, 15, 20]
let sum = arr.reduce(function (pre, item) {
return pre + item; //pre相当于sum求和的sum初始值
}, 0)
console.log(sum);
pre没有传入参数,从数组的1号参数开始,所以只打印四次hello
// 数组.reduce(function(pre,item,index,arr){},初始值)
//说明:reduce也会将回调函数调用多次,如果传递了初始值,reduce会从数组的
// 0号元素开始,如果没有传,从数组的1号元素开始。
// 回调函数第一次被调用时,reduce方法会将初始值&#