js 处理并且 、或者、 包含 、不包含的多条件查询

本文介绍了如何在前端使用JavaScript处理多条件查询,涉及包含、不包含、并且、或者等逻辑。首先,针对不包含的情况,需要将数据转换成包含形式。接着,通过filter方法处理并且关系,使用两次筛选获取满足条件的数据。对于或者关系,是在并且筛选后的数据基础上,与全部数据中符合或者条件的部分进行concat操作,完成查询。这种思路适用于前端多条件查询的实现。
摘要由CSDN通过智能技术生成

需求:前端的多条件查询,特别涉及到并且/或者,还有包含/不包含

如图

 

所以查询得时候的考虑一些问题,具体如下:

1、目前查询的时候拿到的用户数据格式如下:

let data= [
{cond:
    {
        keyword:"年会",
        operate:"$regex",//包含关系
        },
      {
       keyword:"^((?!2019).)*$",
        operate:"$regex",//不包含例子,统一处理为包含关系,区别在于keyword
      }  
},
relation:"$and",//并且/或者$or关系
}
]

2、目前是统一处理为包含关系,所以不包含得情况下需要转化一下数据

比如如果是选得不包含情形,进行处理为包含

2.1 、包含/不包含得html

//html
<select class="condition-search-select icon-aggrid-select relation">
    <o
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值