zoukankan      html  css  js  c++  java
  • js filter()用法小结

    /* 
    filter()
    对数组中的每个元素都执行一次指定的函数(callback),并且创建一个新的数组,
    该数组元素是所有回调函数执行时返回值为 true 的原数组元素。它只对数组中的
    非空元素执行指定的函数,没有赋值或者已经删除的元素将被忽略,同时,新创建的
    数组也不会包含这些元素。
    
    回调函数可以有三个参数:当前元素,当前元素的索引和当前的数组对象。
    */
    
    
    // 原始数据
    var arrs = [
      {
        name: "tom",
        age: 18,
        sex: "boy"
      },
      {
        name: "jim",
        age: 19,
        sex: "boy"
      },
      {
        name: "anchor",
        age: 20,
        sex: "boy"
      },
      {
        name: "lucy",
        age: 18,
        sex: "girl"
      },
      {
        name: "lily",
        age: 19,
        sex: "girl"
      },
      {
        name: "andy",
        age: 20,
        sex: "girl"
      }
    ];
    
    // 过滤条件
    var limits = {
      name: 'tom',
      age: 18,
      sex: 'boy'
    };
    
    // filter回调函数
    function dofilter(element, index, array) {
      if(limits.name && limits.name != element.name){ // 姓名过滤
        return false;
      }else if(limits.age && limits.age != element.age){ // 年龄过滤
        return false;
      }else if(limits.sex && limits.sex != element.sex){ // 性别过滤
        return false;
      }
      return true;
    }
    
    /* test */
    var filtered = arrs.filter(dofilter);
    console.log(filtered);

  • 相关阅读:
    C++ for(char c:s)遍历字符串||for (char c : s)和for (char& c : s)的区别
    二维数组的查找--剑指offer(C++)
    C++学习笔记之--boolalpha
    在C++中matrix.size()和matrix [0] .size()之间的区别是什么?
    C3_note
    用webpack4从零开始构建react脚手架
    php
    正则表达式基础
    DOM
    常用H5
  • 原文地址:https://www.cnblogs.com/archermeng/p/8587522.html
Copyright © 2011-2022 走看看