JavaScript 字符串 lastIndexOf()

lastIndexOf() 方法返回在字符串中给定子字符串的最后一次出现的位置索引。

示例

// defining a string
var str = "Programming";

var substr = "g";

// find last occurrence of "g" in str var result = str.lastIndexOf(substr);
console.log(result); // Output: 10

lastIndexOf() 语法

lastIndexOf() 方法的语法是

str.lastIndexOf(searchValue, fromIndex)

其中,str 是一个字符串。


lastIndexOf() 参数

lastIndexOf() 方法接受

  • substr - 要在给定字符串中搜索的值。
  • fromIndex (可选) - 向后搜索字符串的起始索引。默认值为 +Infinity

注意事项

  • 如果 fromIndex >= string.length,则会搜索整个字符串。
  • 如果 fromIndex < 0,则将其视为与 0 相同。

lastIndexOf() 返回值

lastIndexOf() 方法返回

  • 如果值在字符串中至少出现一次,则返回该值在字符串中的最后一次出现的位置索引。
  • 如果未显式提供字符串,则返回 fromIndex

注意: 如果在给定字符串中找不到子字符串,则该方法返回 -1


示例 1:使用 lastIndexOf() 方法

// defining a string
var str = "Programming";

var substr = "m";

// find last occurrence of "m" in str var result = str.lastIndexOf(substr);
console.log(result);

输出

7

在上面的示例中,我们定义了一个名为 str 的字符串。substr 变量包含 "m",它是给定字符串的子字符串。

lastIndexOf() 方法查找 substr 最后一次出现的位置索引。由于字符串的索引从 0 开始,str.lastIndexOf(substr) 返回值 7


示例 2:带两个参数的 lastIndexOf()

// defining a string
var str = "Programming";

// defining a substring 'substr' that holds character 'g'
var substr = "g";

var fromIndex = 6;

// passing second parameter 'fromIndex' in lastIndexOf() var result = str.lastIndexOf(substr, fromIndex);
console.log(result);

输出

3

在上面的示例中,我们传递了 fromIndex 作为第二个参数。因此,lastIndexOf() 方法从 fromIndex 向后搜索子字符串。

str.lastIndexOf(substr,fromIndex)fromIndex 向后搜索 "g",并找到 "g" 最后一次出现的位置,即索引 3


示例 3:找不到子字符串时

var str = "I love JavaScript";

// passing a substring that is not in a given string var result = str.lastIndexOf("Python")
; console.log(result);

输出

-1

这里,我们传递了 "Python" 作为 substr。由于 "Python""I love JavaScript" 字符串中找不到,因此该方法返回 -1


示例 4:lastIndexOf() 的区分大小写搜索

lastIndexOf() 方法区分大小写。例如:

var str = "I love JavaScript";

// lastIndexOf() with "JavaScript" as substr var result1 = str.lastIndexOf("JavaScript");
console.log(result1);
// lastIndexOf() with "javaScript" as substr var result2 = str.lastIndexOf("javaScript");
console.log(result2);

输出

7
-1

在这里,lastIndexOf() 方法区分大小写,因此它将 "JavaScript""javaScript" 视为两个不同的 substr

该方法返回 "JavaScript" 的索引值 7,而 "javaScript" 的索引值是 -1


另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战