1. 如何校验一段话中是否有关键字
方法有很多啊, 这里我们就直接用 indexof() 判断关键字的下标值就 OK
let a = 'a'
let b = '123'
let b1 = '23'
let c = '123456789'
c.indexOf(a) //.log() -1
c.indexOf(b) //.log() 0
c.indexOf(b1) //.log() 1
根据上面的输出结果 在内容字段里查找 目标字段,如果返回 的下标值 是否为 -1 就能知道是否存在关键字了 很简单哈! 下面我们来看一个稍微复杂点的关键字筛选
2. 如何校验多个关键字
首先规范下数据格式数据格式
const data = [
{ key: '周一', value: '今天是周一'},
{ key: '周二&周一', value: '今天是周二'},
{ key: '周六&周日日', value: '今天是周三'},
]
创建index.js 用来封装方法(知道各位都有这个实力就不解释了,直接上代码)
完整代码
export function register(blemData) {
// console.log(data.length);
let dataType = ''
const data = [
{ key: '周一', value: '今天是周一'},
{ key: '周二&周一', value: '今天是周二'},
{ key: '周六&周日', value: '今天是周三'},
]
for (let d = 0; d < data.length; d++) {
let dataArr = data[d].key.split('&')
// 通过 & 分割将字符串转为数组
let arr = 0
// console.log(dataArr.length);
for (let i = 0; i < dataArr.length; i++) {
arr += Number(blemData.indexOf(dataArr[i]))
}
if (dataArr.length > 1) {
if (arr - dataArr.length == 0) {
dataType = data[d].value
}
} else {
if (arr == 0) {
dataType = data[d].value
}
}
}
return dataType
}
在需要使用的 index.vue 文件中直接引用就可以了
import { register } from './index'
methods: {
onChange() {
let dataType = register(altData)
alert(dataType)
},
},