关于includes和indexOf 筛选关键字的区别
直接说结果
includes是筛选 目标里的任何一个字母 ,用白话讲 就是只要包含了就是ture
indexOf 判断数组中是否存在某个值,如果存在,则返回数组元素的下标,否则返回-1 ,默认筛选第一个 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
看代码和结果 这里用的是includes
var newword = [];
phoneList.forEach(function (value, index) {
if (value.name.includes(b.value)) {
newword.push(value);
}
setData(newword);
});
console.log(newword);
setData(newword);
}
可以看到 我只搜索关键字 关于o的就全部都出来了,
这里用的是indexOf
`/ else {
// if (b.value == “”) {
// setData(phoneList);
// }
// var newword = [];
// phoneList.forEach(function (value, index) {
// if (value.name.indexOf(b.value)) {
// newword.push(value);
// }
// setData(newword);
// });
// console.log(newword);
// setData(newword);
// }
再看图 搜索米关键字 图标无反应
搜索小关键字出来小米 ,也就是说 indexOf默认赛选字符串的一个字
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
所以在以后相关开发中 用includes更为准确