js 根据 数组条件 简单查询的方法临时保存

    let array = [{
        date: '2016-05-02',
        name: 'Ethan',
        status: 'success',
        total: '81'
      },
      {
        date: '2016-05-04',
        name: 'Lynn',
        status: 'fail',
        tag: '50'
      },
      {
        date: '2016-05-01',
        name: 'Kevin',
        status: 'success',
        tag: '20'
      }
    ];
    let filterStatus = "success";
    let filterNames = ['Lynn', 'Kevin'];
    let result = array.filter((a, i) => {
      return (a.status === filterStatus && filterNames.some(f => (f === a.name)))

      //filterNames.map--------------
      // 0:
      //   date: "2016-05-02"
      // name: "Ethan"
      // status: "success"
      // total: "81"
      // __proto__: Object


      // 1:
      //   date: "2016-05-01"
      // name: "Kevin"
      // status: "success"
      // tag: "20"
      // map-----

      //filterNames.some  ---weiyi

      //   date: "2016-05-01"
      // name: "Kevin"
      // status: "success"
      // tag: "20"

方法2:

let keys = Object.keys(filters)
let result = array.filter(item => {
  return keys.every(key => filters[key].indexOf(item[key]) !== -1)
})
原文地址:https://www.cnblogs.com/autoXingJY/p/11422101.html