📜  javasript 数组 indexof - Javascript (1)

📅  最后修改于: 2023-12-03 15:16:18.751000             🧑  作者: Mango

JavaScript 数组 indexOf

JavaScript 中,数组是一种基本的数据结构,它允许我们存储一组有序的元素,并能够通过索引快速访问这些元素。在使用数组时,我们经常需要查找一个元素在数组中的位置,这时就可以使用 indexOf 方法。

语法
array.indexOf(searchElement[, fromIndex])

indexOf() 方法接受一个参数 searchElement,它是要查找的元素,可以是任何类型的值。返回值是一个数字,表示 searchElement 在数组中第一次出现的位置,如果数组中不存在该元素,则返回 -1。

indexOf() 方法还可以接受一个可选的参数 fromIndex,它指定了从哪个索引开始查找。如果省略 fromIndex 参数,则从数组的第一个元素开始查找。如果 fromIndex 为负数,则从数组的倒数第几个元素开始查找。

示例

以下是 indexOf() 方法的几个使用示例:

const array1 = ['a', 'b', 'c'];
console.log(array1.indexOf('b'));  // 1
console.log(array1.indexOf('d'));  // -1

上面的示例说明,indexOf() 方法会返回该元素在数组中的位置索引,如果该元素不存在,则返回 -1。

const beasts = ['ant', 'bison', 'camel', 'duck', 'bison'];
console.log(beasts.indexOf('bison')); // 1
console.log(beasts.indexOf('bison', 2)); // 4
console.log(beasts.indexOf('giraffe')); // -1

上面的示例说明,indexOf() 方法还可以接受第二个参数 fromIndex,它可以指定从哪个索引开始查找。

注意事项

注意,数组中的元素可以是任何类型的值,包括对象、函数等引用类型。在比较两个引用类型时,它们的指针并非总是相等的,因此在比较时需要使用 === 进行全等比较,而不能使用 ==!=

此外,indexOf() 方法只返回第一个匹配的索引值。如果数组中包含多个匹配项,我们可以结合 lastIndexOf() 或循环遍历来进行多个匹配项的处理。