js实现模糊查询

模糊查询是怎么实现的? 首先,我们要知道模糊查询是根据输入关键字来匹配字符的。然后,根据字符匹配算法来匹配你的输入值,最后筛选出匹配后的关键值就ok了。

常见的匹配方法有两种:一、indexOf()字符串方法;二、正则匹配

eg:   var list = ['we1','rt5','yuy6','nv8'];var keyWord = 'T'

1 . indexOf()方法进行查询

// 模糊匹配

、、、

functionsearchData(keyWord, list) {

  if(!Array.isArray(list) && keyWord!=='') return

  let arr= []

  let keyword= keyWord.toLocaleLowerCase() // 不区分大小写

for(let i=0; i< list.length; i++) {

    if(list[i].indexOf(keyword)!==-1) arr.push(list[i])

  }

  return arr

}

、、、

2. 正则匹配

可以使用匹配函数,match和test

functionsearchData(keyWord, list) {

  if(!Array.isArray(list) && keyWord!=='') return

  let arr= []

  let reg=newRegExp(keyWord,'i') // 不区分大小写

for(let i=0; i< list.length; i++) {

    if(list[i].match(reg)) arr.push(list[i])

  }

  return arr

}

你可能感兴趣的:(js实现模糊查询)