一,indexOf 存在就 返回第一次出现所在的位置 没找到就返回-1
数组调用
//语法
// array.indexOf(item,start)
let food= ["番茄", "胡萝卜", "排骨", "苹果"];
let a = food.indexOf("苹果");
console.log(a) // 3
let b= food.indexOf("香蕉");
console.log(b) // -1
字符串调用
//语法
//string.indexOf(value,start)
let str="Hello world!";
console.log(str.indexOf("Hello"));//0
console.log(str.indexOf("World") );//-1
console.log(str.indexOf("world"));//6
去重
let arr = [1, 2, 3, 3, 4, 4, 5]
let array = [ ];
for (let i = 0; i < arr.length; i++) {
if (array.indexOf(arr[i]) === -1) {
array.push(arr[i])
}
}
应用场景
- 搜索框
- 如果找到了 有输入过这个历史记录就删掉
- 把最新的搜索内容从前插入进来
![](https://i-blog.csdnimg.cn/blog_migrate/17015cbf527b6ccd58096eb3951d14b8.png)
二、includes方法 返回布尔值 找到就返回true 找不到就返回false
var arr2 = [1,9,8,8,7,2,5,3,3];
let newArr2 = [];
for(i=0; i<arr2.length; i++){
if(!newArr2.includes(arr2[i])){
newArr2.push(arr2[i])
}
}
console.log(newArr2)