17370845950

js中使用indexOf() 方法判断字符串包含某个字符
使用 indexOf() 方法可判断字符串是否包含某字符,返回索引值或-1;通过检查返回值不等于-1即可确认包含关系,该方法区分大小写且仅返回首次匹配位置,适合基础场景。

在 JavaScript 中,可以使用 indexOf() 方法来判断一个字符串是否包含某个字符或子字符串。这个方法会返回指定内容在原字符串中首次出现的位置(索引),如果找不到则返回 -1。

基本语法

str.indexOf(searchValue)

  • searchValue:要查找的字符或子字符串
  • 返回值是数字:找到时返回第一次出现的索引(从0开始),未找到返回 -1

判断字符串是否包含某字符

通过判断返回值是否不等于 -1,就可以知道是否包含目标字符:

const str = "hello world";
if (str.indexOf("o") !== -1) {
  console.log("字符串包含 'o'");
}
// 输出:字符串包含 'o'

也可以封装成一个通用函数:

function contains(str, char) {
  return str.indexOf(char) !== -1;
}

console.log(contains("javascript", "s")); // true
console.log(contains("javascript", "x")); // false

注意事项

  • indexOf() 区分大小写,比如 "A" 和 "a" 被视为不同字符
  • 如果要查找的是多个字符组成的子串,也能正常使用
  • 只返回第一次匹配的位置,如需全部匹配可用其他方法配合循环

基本上就这些,用 indexOf() 判断包含关系简单直接,兼容性好,适合基础场景。