String.IndexOf(Char, [startIndex], [count]):返回指定字符在原字符串中的第一個匹配項的索引。可指定字符開始檢索位置和指定長度的字符,若沒有找到該字符,則返回 -1。也可以判斷數組中是否包含某個值。
示例1:查找字符串中某一字符從頭開始第一次出現的索引
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。
示例2:查找字符串中某一字符從指定位置開始第一次出現的索引
var str = "Hello world! wo shi ooo"
console.log(str.indexOf("o",8)) //14
有indexOf,也就有lastIndexOf,它和indecOf相反,是匹配字符串最后一次出現的索引
var str = "Hello world! wo shi oll"
onsole.log(str.indexOf("o")) //4
console.log(str.lastIndexOf("o")) //20
對應indexOf和lastIndexOf,通常用在判斷字符串中是否包含某個字符的情景中:
var str = "Hello world! wo shi oll"
console.log(str.indexOf("World") == -1) //true
console.log(str.indexOf("world") == -1) //false
示例3:判斷數組中是否包含某個元素
const arr = [1,5,3,8,22]
console.log(arr.indexOf(2))//不存在,返回-1
console.log(arr.indexOf(8))//存在,返回索引3