当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript String indexOf()用法及代码示例


在本教程中,我们将借助示例了解 JavaScript 字符串 indexOf() 方法。

字符串 indexOf() 方法返回字符串中子字符串第一次出现的索引。

示例

const message = "JavaScript is not Java";

// returns index of 'v' in first occurrence of 'va'
const index = message.indexOf("va");

console.log('index: ' + index);  // index: 2

indexOf() 语法

用法:

str.indexOf(searchValue, fromIndex)

在这里,str 是一个字符串。

参数:

indexOf() 方法包含:

  • searchValue- 要在字符串中搜索的值。如果没有明确提供字符串,"undefined"将被搜索。
  • fromIndex(可选)- 开始搜索的索引。默认情况下是0.如果从索引 < 0, 搜索从索引开始0.

返回:

  • 如果它至少出现一次,则返回字符串中值的第一个索引。
  • 返回-1如果在字符串中找不到该值。

注意: indexOf()方法区分大小写。

对于小于字符串长度的空字符串 searchValuefromIndexindexOf 返回与 fromIndex 相同的值。

同样,对于大于字符串长度的空字符串searchValuefromIndexindexOf 返回字符串的长度。

"Programiz JavaScript".indexOf("", 0); // returns 0
"Programiz JavaScript".indexOf("", 3); // returns 3

// string length here is 20
"Programiz JavaScript".indexOf("", 25); // returns 20
"Programiz JavaScript".indexOf("", 21); // returns 20

示例 1:使用 indexOf() 方法

var str = "JavaScript is the world's most misunderstood programming language.";

// indexOf() returns the first occurance
var index1 = str.indexOf("language");
console.log(index1); // 57

var index2 = str.indexOf("p");
console.log(index2); // 8

// second argument specifies the search's start index
var index3 = str.indexOf("p", 9);
console.log(index3); // 45

// indexOf returns -1 if not found
var index4 = str.indexOf("Python");
console.log(index4); // -1

输出

57
8
45
-1

示例 2:查找元素的所有出现

function findAllIndex(string, value) {
  indices = [];
  var currentIndex = string.indexOf(value);
  while (currentIndex != -1) {
    indices.push(currentIndex);
    currentIndex = string.indexOf(value, currentIndex + value.length);
  }
  return indices;
}

var str = "JavaScript is as related to Java as Carpenter is to Carpet.";

var occurance1 = findAllIndex(str, "J");
console.log(occurance1); // [ 0, 28 ]

var occurance2 = findAllIndex(str, "Carpet");
console.log(occurance2); // [ 52 ]

var occurance3 = findAllIndex(str, "x");
console.log(occurance3); // []

输出

[ 0, 28 ]
[ 52 ]
[]

相关用法


注:本文由纯净天空筛选整理自 JavaScript String indexOf()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。