js 一些的数组的方法

forEach()
//1.forEach() 遍历数组  向传入的回调函数传入元素值 和 索引    没有返回值
let arr = [10,20,30,40];
//forEach传入一个回调函数 forEach会向回调函数返回两个实参 第一个是值 第二个是索引
arr.forEach(function(item,index){
    
    
    console.log(item,index);
});

//同样 回调函数也可以写成箭头函数
arr.forEach((item,index) => console.log(item,index));

//利用forEach 求数组中的最大值
let max = -Infinity;//Infinit无穷  -Infinity 就是负无穷 就是无穷小
let res = arr.forEach((item,index) => {
    
    
    if(item > max){
    
    
        max = item;
    }
    return 777;//不管写不写这个都没有返回值
});
console.log(max);
console.log(res);//结果为 undefined 说明forEach没有返回值
map()
//2.map()遍历数组 向传入的回调函数传入元素值 和 索引  有返回值返回成一个数组
let res = arr.map(function(item,index){
    
    
    console.log(item,index);
    return item*item;//返回的return后面的内容 并且push到你要赋值的变量里  所有最后形成一个数组
});
console.log(res);
filter()
//3. filter() 过滤器   向传入的回调函数传入元素值 和 索引
//他会创建并最为返回值 返回一个新的数组,新的数组中的元素是通过检查后符合条件的元素形成的
let arr1 = [10,23,56,89,50,10,30];
let arrnew = arr1.filter(function(item,index){
    
    
    //只会返回表达式成立的 对应的所代表的元素 是符合条件的整个元素
    return item % 2 == 0;  //只有在当前的返回值为true时 才会将返回值加到创建的新数组中
});
console.log(arrnew);

猜你喜欢

转载自blog.csdn.net/weixin_44492275/article/details/107999431