zoukankan      html  css  js  c++  java
  • JS-find、filter、forEach、map

    js这四个方法不会对空数组进行检测,也不会改变原始数组

      find()方法主要用来返回数组中符合条件的第一个元素(没有的话,返回undefined)

    //语法 array.find(function(value, index, arr),thisValue)

    var
    Array = [1,2,3,4,5,6,7]; var result = Array.find(function(value){ return value > 5; //条件 }); console.log(result);//6 console.log(Array);//[1,2,3,4,5,6,7]

      filter()方法主要用来筛选数组中符合条件的所有元素,并且放在一个新数组中,如果没有,返回一个空数组

    //语法 array.filter(function(value, index, arr),thisValue)
    var Array= [1,2,3,4,5,6,7];
     var result = Array.filter(function(value){
         return value>5;
     });
     console.log(result);//[6,7]
     console.log(Array);//[1,2,3,4,5,6,7]

      map()方法主要用来对数组中的元素调用函数进行处理,并且把处理结果放在一个新数组中返回(如果没有返回值,新数组中的每一个元素都为undefined)

    //语法 array.map(function(value, index, arr),thisValue)
     var Array = [1,2,3];
     var result =Array.map(function(item){
        return item* 2;
     });
     console.log(result);//[2,4,6]
     console.log(Array);//[1,2,3]

      forEach()方法也是用于对数组中的每一个元素执行一次回调函数,但它没有返回值(或者说它的返回值为undefined,即便我们在回调函数中写了return语句,返回值依然为undefined)

    注意: 如果forEach里有两个参数,则第一个参数为该集合里的元素,第二个参数为集合的索引; 若只有一个参数则该参数就是遍历数组中的一项; 不能 使用 return false 终止循环 只是终止了本次循环

     var Array = [1,2,3,4,5];
     var sum = 0;
     var res = Array.forEach(function(item,index){
        sum += item;
     });
     console.log(res); //undefined     
     console.log(Array);//[1,2,3,4,5]
     console.log(sum);//15
    //一般不写返回值
    Array.forEach(function(value){
        sum += value;
    });
    console.log(sum) //15

      jquery中的 each 

    注意:如果回调函数里只有一个参数时,则为集合的索引; 如果有两个参数,则第一个为索引,第二个该集合里的元素; 可在 方法中 return false 跳出循环

    var Array= new Array(['a','b','c']);
    $.each(Array, function(index,item){
        console.log(index);  // 0,1,2
        console.log(item);  // a,b,c
    })
  • 相关阅读:
    Linux filesystem
    centos 下 gradle 编译打包 apk
    python SSL 错误
    nginx 缓存配置
    nginx 反向代理配置
    redhat 网卡绑定
    磁盘阵列
    Centos 安装Django2.1
    python pyquery 基本用法
    python 爬虫之-- 正则表达式
  • 原文地址:https://www.cnblogs.com/yangchin9/p/10715628.html
Copyright © 2011-2022 走看看