前端模糊搜索

这篇博客介绍了如何在JavaScript中利用indexOf方法进行模糊搜索,当在对象数组中根据输入的关键词筛选元素时,如果找到匹配项,返回其索引,否则返回-1。示例代码展示了在Vue.js环境中,结合el-input和el-checkbox组件,动态过滤headerList数组并显示结果。
摘要由CSDN通过智能技术生成

根据输入字符从对象数组中筛选,模糊搜索,

indexOf() 如果查询到返回索引,反之返回-1

代码如下

html代码

      <div class="left-box">
        <div class="search-box">
          <el-input size="small" class="search-input" placeholder="请输入关键词" v-model="searchKey">
            <i slot="prefix" class="el-input__icon el-icon-search"></i>
          </el-input>
        </div>

        <div class="checks-box">
          <el-checkbox-group v-model="checkList">
            <el-checkbox v-for="(item, index) in searchL" :key="index" :label="item.column_comment"></el-checkbox>
            <el-checkbox v-for="(it, idx) in defaultList" :key="idx + headerList.length" :label="it.column_comment" disabled></el-checkbox>
          </el-checkbox-group>
        </div>
      </div>

js代码

  computed: {
    searchL() {
      let that = this
      if (that.searchKey) {
        return that.headerList.filter(item => item.column_comment.indexOf(that.searchKey) > -1)
      } else {
        return that.headerList
      }
    }
  }

filter 定义

filter用于对数组进行过滤。
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

filter() 不会对空数组进行检测;不会改变原始数组

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值