js indexOf()定义和用法


`indexOf()` 方法在 JavaScript 中用于确定一个字符串在另一个字符串中首次出现的位置,或者一个元素在数组中的索引位置(如果找到了的话)。如果没有找到,则返回 -1。

### 字符串中的用法

对于字符串,`indexOf()` 方法搜索调用它的字符串,以找到参数中指定的子字符串,并返回子字符串的首次出现的索引。索引从 0 开始计算。


let str = "Hello, world!";
let index = str.indexOf("world"); // 返回 7
console.log(index);

在这个例子中,`"world"` 在 `"Hello, world!"` 中首次出现的位置是索引 7(因为索引是从 0 开始的)。

### 数组中的用法

对于数组,`indexOf()` 方法搜索数组以找到具有指定值的元素,并返回该元素的索引。如果未找到该元素,则返回 -1。


let arr = [2, 5, 9];
let index = arr.indexOf(5); // 返回 1
console.log(index);

在这个例子中,数字 `5` 在数组 `[2, 5, 9]` 中的索引是 1。

### 注意事项

- 如果 `indexOf()` 方法在字符串中搜索时未找到子字符串,或者在数组中未找到元素,则返回 `-1`。

- 对于字符串,`indexOf()` 方法对大小写敏感。

- `indexOf()` 方法可以接受第二个可选参数,表示开始搜索的索引位置。如果省略,搜索将从字符串或数组的开头开始。


let str = "Hello, world!";
let index = str.indexOf("world", 8); // 返回 -1,因为从索引 8 开始搜索时找不到 "world"
console.log(index);

let arr = [2, 5, 5, 9];
let indexInArray = arr.indexOf(5, 1); // 返回 1,因为从索引 1 开始搜索时第一个 5 的索引是 1
console.log(indexInArray);