![c2f842e4ef618aee3fe0f7ea96f0eff8.png](https://i-blog.csdnimg.cn/blog_migrate/04ec2bb1c8483768d93f9e3972ac80ba.png)
这个方法适合站内的搜索和查找,可以不调用后端接口,来进行模糊查找相对固定的数据!
先上代码
let productList = data.filter(array => array.name.match(value));
就是这样一句就可以做到,接下来为各位学习者逐一解析。
首先我们是主要用到了.filter()和.matc()这两个方法,结合这两个方法可以使前端在以获取数据的情况下实现模糊查找。
解析代码
首先data是我们已经获取到的待查询数据里面放了一些数组,然后我们通过.filter方法来进行过滤符合条件的数据,然后返回所有符合条件的数据。
我们在里面用到了一个箭头函数,在这里array=>array是指从数组当中要过滤掉的对象,当然array也可以通过其他的变量来进行一个替代。
最后,match() 方法是用来模糊匹配的,可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。data里面每一个数组都有一个name,这里我们就可以匹配name。
value则是我们搜索输入进来的数据,这样已有的数据就可以和输入进来的value进行对比。
将匹配到的符合的数据赋给了productList,直接调用productList就能获得我们搜索出来的结果。
.filter和.match可以适用于很多的模糊数据匹配,方法一样的大家可以自行探索。