jsindexOf实现模糊搜索时区分⼤⼩写问题解决
在如今 前端开发在整个开发过程中,也要处理很多数据逻辑了
那么模糊搜索 ⽤filter数组过滤 与 indexOf模糊搜索 显然是很不错的写法
但indexOf 有个很⼤的问题 那就是 他是区分⼤⼩写的
例如 L 和 l 在indexOf下是不能匹配的
那么这个时候我们就需要将他们转换过来
toUpperCase 将字符串变量转成⼤写
toLowerCase 将字符串变量转成⼩写
indexof的用法javascript显然,这两个⽅法都能解决问题
参考代码如下
let data =[
{
id:1,
name:'Gr你好'
},
{
id:2,
name:'gG 这是⼀局愉快的游戏'
},
{
id:3,
name:'数据编制的时代'
}
]
let text ='g'
let distinguish = data.filter((e)=> e.name.indexOf(text)!=-1)
let nodistinguish = data.filter((e)=> LowerCase().LowerCase())!=-1)
console.log(distinguish);//[{id: 2,name: 'gG 这是⼀局愉快的游戏'}]
console.log(nodistinguish);/* [{id: 1,name: 'Gr你好'},{id: 2,name: 'gG 这是⼀局愉快的游戏'}] */
其实原理也很简单 就是将条件和内容都转成⼤写 或者 都转成⼩写 在进⾏过滤

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。