对于模糊查询,一般都是传关键字给后端,由后端来做。但是有时候一些轻量级的列表前端来做可以减少ajax请求,在一定程度上提高用户体验。废话不多说,直接上代码。

//字符串方法indexOfvar len = list.length;var arr = [];for(var i=0;i<len;i++){    //如果字符串中不包含目标字符会返回-1    if(list[i].indexOf(keyWord)>=0){        arr.push(list[i]);    }}return arr;
//正则表达式var len = list.length;var arr = [];var reg = new RegExp(keyWord);for(var i=0;i<len;i++){    //如果字符串中不包含目标字符会返回-1    if(list[i].match(reg)){        arr.push(list[i]);    }}return arr;

首先要明白什么是模糊查询(废话又来了),就是根据关键字把列表中符合关键字的罗列出来(当然这里只做了最简单的),也就是要检查列表的每一项中是否含有关键字,因此抽象一下就是一个字符串中是否含有某个字符或者字符串。

有了思路,接下来就是去实现了,用什么方法呢,学js的基本数据类型时我们会发现String有很多方法,其中有个方法string.indexOf('');这个方法是找出字符串中某个字符的位置,而如果没有目标字符会返回-1。所以我们可以用这个方法去检查列表中每一项是否含有关键字。接下来就是很强大的RegExp,正则表达式去匹配字符串的目标字符,这里用了match方法,匹配不到返回空,当然其他几个方法也有实现方式,此处不再罗列。

最后,demo地址:https://github.com/Stevenzwzhai/plugs,欢迎大家一起来写插件,纯原生js实现,star一下最好了!

转载于:https://www.cnblogs.com/Upton/p/5999179.html

js前端实现模糊查询相关推荐

  1. 前端实现模糊查询不区分大小写

    首先,在js中转大小写的方法都有哪些? 在javascript中,转大写/小写的方法有toLocaleLowerCase().toLocaleUpperCase().toLowerCase()以及to ...

  2. html搜索框 模糊搜索,前端js模糊搜索(模糊查询)

    1.html结构: /*查询结果放ul里面*/ 2.css样式: #searchShop { line-height: 28px; text-indent: 5px; width: 180px; fl ...

  3. java ftp模糊查询_前端js模糊搜索(模糊查询)

    1.html结构: /*查询结果放ul里面*/ 2.css样式: #searchShop{ line-height:28px; text-indent:5px; width:180px; float: ...

  4. 纯前端实现模糊查询 或和且

    js代码: //onclick事件 function searchText() {var keyword = $("#search_text").val().trim();var ...

  5. 使用原生js实现邮箱模糊查询的效果

    写的比较粗糙,还有很多改进的地方,先用来记录一下 html: <div class="box">         <input type="text&q ...

  6. 【前端模糊查询】vue用elementul表格,前端写模糊查询功能,简单实现方法

    效果图 代码 html <el-table:data="tableData"stripestyle="width: 100%; margin-bottom: 30p ...

  7. vue前端实现模糊查询

    <div class="blacklistPage"><van-search v-model="searchValue" placeholde ...

  8. 前端实现js模糊查询关键字显示下拉框功能的实例教程

    所谓模糊查询就是通过关键字在数据中匹配到包含关键字的数据,而得出的查询结果.本实例教程讲解在前端文本框输入关键字,显示匹配的数据列表功能. 首先得准备一个文本框和显示数据列表的div元素,html代码 ...

  9. vue和js中如何实现模糊查询

    先来看效果图 这种数据量少的场景适用于前端实现模糊查询 如何实现? <template><div class="container"><div cla ...

最新文章

  1. 公司网络推广为你解答蜘蛛为什么有抓取网页却没收录?
  2. flutter AppBar
  3. 解析发展方向,定格人生道路
  4. Docker-machine创建虚机时停在虚机启动的提示上,并且创建的虚机显示Ip Not found...
  5. Angular4 存储访问路由栈信息
  6. c语言 课程作业答案,《C语言程序设计A》课程形成性考核作业一参考答案
  7. 【Git基础笔记】常用命令
  8. Bi系统 :poli部署
  9. 国内先进的光电转换器件设计和单光子检测成像技术 1DTof 3DTof 激光测距传感器
  10. fastdb学习记录#1 table、宏、query、cursor
  11. Leetcode 684. 冗余连接(dsu,氵)
  12. Lumiprobe丨Lumizol RNA 提取试剂解决方案
  13. 人机交互与计算机科学,阐述人机交互方式的变革引领计算机科学的发展
  14. 禁止input密码自动填充及浏览器记住密码完整解决方案
  15. c语言实现求最大公约数的三种方法
  16. 每日一题2021/5/22:黑板异或
  17. 计算机毕业设计Java新冠疫苗接种预约系统登录(源码+系统+mysql数据库+Lw文档)
  18. 手把手教你如何在Facebook上找客户——实战分享
  19. 《网络媒体教程》后记
  20. sql文字转换全拼_SQL自定义函数:由汉字生成拼音全拼

热门文章

  1. python从零基础到项目实战怎么样-2018完整Python零基础到项目精通的学习书籍
  2. python安装库-python 安装库
  3. python代码画简单图-Python figure参数及subplot子图绘制代码
  4. 电脑python下载-Python3.9官方下载
  5. python程序员又叫什么-Python程序员鲜为人知但你应该知道的17个问题
  6. python简单代码加法-Python tkinter实现简单加法计算器代码实例
  7. 开课吧python学费-开课吧成为CNCC中国计算机大会唯一教育合作伙伴
  8. python爬虫requests-Python爬虫之requests介绍
  9. python装饰器实例-python 装饰器的使用示例
  10. 从零开始学python电子书-从零开始学Python程序设计 PDF