indexOf()方法用于搜索一个给定数组中某个元素的索引;它也可以用于查找一个字符串中某个字符或子串的位置。indexOf()方法如果找到元素/子串,则返回其位置;否则,返回-1。索引从0开始,所以数组的第一个元素和字符串中的第一个字总是返回0。
如何使用indexOf()方法
在本指南中,我们将学习如何使用indexOf()方法来查找数组/字符串中某个元素/子串的索引;但首先,让我们讨论一下它的语法。
array_name.indexOf(element, starting_point)
string_name.indexOf(searchvalue, starting_point)
indexOf()方法需要两个参数。
-
element/searchvalue。第一个参数是必需的。它可以是一个数组中的一个元素或一个子串,其索引是必需的。
-
starting_point:这个参数是可选的。它告诉该方法从指定的点开始搜索。默认情况下,它是0。
现在将使用indexOf()方法来查找数组中一个元素的索引,作为一个例子。
注意:我们将使用浏览器控制台来演示本篇文章中的例子。要打开浏览器的控制台。
- 在Chrome和其他基于chromium的浏览器中使用F12键。
- 在Mozilla使用CTRL + SHIFT + K键盘快捷键。
- 在Safari浏览器中使用Option + ⌘ + C键盘快捷键(如果没有出现开发者菜单,则按⌘ +打开偏好,并在高级选项卡中勾选 "在菜单栏中显示开发菜单")。
例子
var animals = ['Lion', 'Monkey', 'Rhino', 'Cat'];
console.log(animals.indexOf('Rhino'));
同样地,我们也可以在一个字符串上使用这个方法。
var str = 'Welcome to Linux Hint!';
console.log(str.indexOf('to'));
它也可以用来寻找一个单一的字符。
var str = 'Welcome to Linux Hint!';
console.log(str.indexOf('c'));
indexOf()方法默认从0开始搜索;但我们也可以把起点作为参数传递。
var animals = ['Lion', 'Monkey', 'Rhino', 'Cat'];
console.log(animals.indexOf('Rhino', 3));
该方法返回了**-1**,因为如果它从3开始搜索,就找不到'Rhino'。现在,如果我们把起点改为2,那么。
var animals = ['Lion', 'Monkey', 'Rhino', 'Cat'];
console.log(animals.indexOf('Rhino', 2));
对于字符串也是如此。
var str = 'Welcome to Linux Hint!';
console.log(str.indexOf('c', 5));
var str = 'Welcome to Linux Hint!';
console.log(str.indexOf('c', 1));
index()方法从0到数组/字符串的末尾开始搜索;并返回搜索值第一次出现的索引。如果一个数组或字符串中有两个类似的项目,你想找到最后一个的索引,那么你应该使用lastIndexOf()方法。
var str = 'Welcome to Linux Hint!';
console.log(str.lastIndexOf('t'));
同样,对于一个数组也是如此。
var animals = ['Lion', 'Monkey', 'Rhino', 'Cat', 'Lion'];
console.log(animals.lastIndexOf('Lion'));
indexOf()方法是区分大小写的。
总结
在编程时,在处理数组或字符串时,我们经常需要找到一个特定元素或子串的索引。在这种情况下,indexOf()方法就会派上用场。
在本指南中,我们已经学会了如何使用indexOf()方法来查找字符串/数组中某一项目的索引。此外,我们还讨论了我们可以传递给indexOf()方法的类型和参数。