数据的筛选

数据筛选

let data = [ {
        name: '名侦探柯南',
        price: 13,
        num:108,
        hot:0,
        status:1
    }, {
        name: '大侦探皮卡丘',
        price: 13,
        num:151,
        hot:1,
        status:0
    }, {
        name: '绿皮书',
        price: 13,
        num:72,
        hot:1,
        status:1
    } ]
 
//@param condition 过滤条件
//@param data 需要过滤的数据
let filter=(condition,data)=>{
    return data.filter( item => {
        return Object.keys( condition ).every( key => {
           return String( item[ key ] ).toLowerCase().includes( 
                   String( condition[ key ] ).trim().toLowerCase() )
            } )
     } )
}
 
//无条件
var condition={name:'',hot:''};
var aa = filter(condition,data);
console.log(aa);
// [{"name":"名侦探柯南","price":13,"num":108,"hot":0,"status":1},{"name":"大侦探皮卡丘","price":13,"num":151,"hot":1,"status":0},{"name":"绿皮书","price":13,"num":72,"hot":1,"status":1}]
 
//单条件
var condition={name:'侦探'};
var bb = filter(condition,data);
console.log(bb);
// [{"name":"名侦探柯南","price":13,"num":108,"hot":0,"status":1},{"name":"大侦探皮卡丘","price":13,"num":151,"hot":1,"status":0}]
 
//多条件
var condition={name:'侦探',hot:'1'};
var cc = filter(condition,data);
console.log(cc);
//[{"name":"大侦探皮卡丘","price":13,"num":151,"hot":1,"status":0}]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值