JavaScript String lastIndexOf() 方法用于查找原始字符串中指定子字符串最后一次出现的索引。它返回子字符串的位置,如果子字符串不存在,则返回 -1。例如,“你好”.lastIndexOf(“ll”) 返回 2,而 “你好”.lastIndexOf(“hi”) 返回 -1。
此方法接受名为 position 的可选参数,该参数指定方法在原始字符串中开始搜索指定子字符串的位置。此参数的默认值为 0。例如,“你好”.lastIndexOf(“l”, 2) 返回 2,而 “你好”.lastIndexOf(“l”, 3) 返回 3。
语法
以下是 JavaScript String lastIndexOf() 方法的语法 -
参数
- searchString − 要搜索的子字符串。
- position (可选) − 从搜索开始的位置。
返回值
此方法返回找到的 substring 的最后一次出现的索引。
示例 1
如果我们省略 position 参数,此方法将 position 视为默认值 0,并返回原始字符串 “qikepucom” 中指定子字符串 “m” 最后一次出现的索引。
输出
上面的程序返回一个索引 9 来替换 “t”。
Sub-string to be searched: m
An index of search string 'm' is: 9
示例 2
如果我们将 position 参数值传递为 5,该方法将从原始字符串中的位置 5 开始搜索子字符串。
以下是 JavaScript String lastIndexOf() 方法的另一个示例。在这里,我们使用此方法在原始字符串 “HelloWorld” 中查找起始位置 5 处的子字符串 “o” 的索引。
输出
执行上述程序后,它在指定位置 5 处为子字符串 'o' 返回索引值 '4'。
Sub-string to be searched: o
Position value is: 5
An index of search string 'o' is: 4
示例 3
如果在原始字符串中找不到指定的子字符串,则此方法返回 -1。
在下面的示例中,我们尝试在原始字符串 “JavaScript” 中查找子字符串 “Mom” 的索引。
输出
当找不到子字符串时,上述程序中的 lastIndexOf() 方法返回 -1。
Sub-string to be searched: Mom
Method str.lastIndexOf(sub_str) returns: -1
Not found...!
示例 4
让我们通过执行以下程序来了解 indexOf() 和 lastIndexOf() 方法之间的区别。
输出
indexOf() 和 lastIndexOf() 方法为同一子字符串返回不同的索引值,如 −
Sub-string to be searched: a
Position value: 20
Method str.lastIndexOf(sub_str) returns: 3