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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值