indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
如果没有找到匹配的字符串则返回 -1。
indexOf() 方法区分大小写。
/* @param {string} search 需检索的字符串值。 @param {number} start 在字符串中开始检索的位置。它的合法取值是 0 到 string Object.length - 1。如省略该参数,则将从字符串的首字符开始检索。 @return {Number} 查找指定字符串第一次出现的位置,如果没找到匹配的字符串则返回 -1。 */ string.indexOf(search,start)
1、数组
indexOf() 方法可返回数组中某个指定的元素位置。
该方法将从头到尾地检索数组,看它是否含有对应的元素。开始检索的位置在数组 start 处或数组的开头(没有指定 start参数时)。如果找到一个 item,则返回 item 的第一次出现的位置。
如果在数组中没找到指定元素则返回 -1。
//语法 // array.indexOf(item,start) //item 必须 要查找的元素的位置, //start 非必须可选的整数参数。规定在数组中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。 let food= ["番茄", "胡萝卜", "排骨", "苹果"]; let a = food.indexOf("苹果"); console.log(a) // 3 let b= food.indexOf("香蕉"); console.log(b) // -1
2、字符串
查找字符串中某一字符从头开始第一次出现的索引
var str = "Hello world!" console.log(str.indexOf("o")) //4 console.log(str.indexOf("Hello")) //0 console.log(str.indexOf("World")) //-1 console.log(str.indexOf("world")) //6 //需要注意的是,当匹配到一个字符串时,会返回字符串中第一个字符的索引,如上例匹配word时,返回的是6。
查找字符串中某一字符从指定位置开始第一次出现的索引
var str = "Hello world! wo shi ooo" console.log(str.indexOf("o",8)) //14
判断字符串中是否包含某个字符的情景中:
var str = "Hello world! wo shi oll" console.log(str.indexOf("World") == -1) //true console.log(str.indexOf("world") == -1) //false
判断数组中是否包含某个元素
const arr = [1,5,3,8,22] console.log(arr.indexOf(2))//不存在,返回-1 console.log(arr.indexOf(8))//存在,返回索引3