JavaScript indexOf() 方法详解与 substring 截取用法

作者:闭包旅人时间:2026-10-26 20:56:41浏览:623

本文详细介绍 JavaScript 中 indexOf() 方法的定义、参数及返回值,说明其从左向右查找子字符串的行为及未找到时返回 -1 的特性。同时涵盖 lastIndexOf()、substring() 截取字符串的两种语法格式,并结合 DOM 元素遍历示例展示 indexOf 在判断类名匹配中的实际应用。

indexOf() 方法定义与参数说明

indexOf() 方法用于返回 String 对象内第一次出现指定子字符串的字符位置。其基本语法为 strObj.indexOf(subString[, startIndex])。其中,strObj 是必选项,代表要操作的 String 对象或字符串文字;subString 也是必选项,指代要在原字符串中查找的目标子字符串;startIndex 为可选项,是一个整数值,用于指定开始查找的索引位置。若省略 startIndex,则默认从字符串起始位置(索引 0)开始查找。该方法返回一个整数,表示子字符串在原字符串中的起始索引。若未找到匹配的子字符串,则返回 -1。需要注意的是,如果 startIndex 为负数,系统会将其视为 0;若 startIndex 大于字符串最大字符索引,则按最大可能索引处理。查找方向始终是从左向右进行,这与 lastIndexOf() 的行为相反。

代码示例如下:

 
function IndexDemo(str2){
var str1 = "BABEBIBOBUBABEBIBOBU"
var s = str1.indexOf(str2);
return(s);
} 


lastIndexOf() 与 substring() 用法

lastIndexOf() 方法用于返回子字符串在字符串中最后一次出现的位置,其查找方向与 indexOf() 相反。



substring() 方法用于截取字符串。



使用语法 str=str.substring(int beginIndex) 时,该方法会截取从字符串首字母开始、长度为 beginIndex 的子字符串,并将剩余部分赋值给 str。


使用语法 str=str.substring(int beginIndex,int endIndex) 时,该方法截取从 beginIndex 开始到 endIndex 结束(不含 endIndex)的子字符串,并将结果赋值给 str。



indexOf() 在 DOM 遍历中的实际应用

具体应用示例如下:


代码如下:

 
var elems=node.getElementsByTagName(“*");
for(var i=0;i<elems.length;i++){
if(elems[i].className.indexOf(classname)!=-1)
{ } 
} 

a.indexOf(b) 常用于判断字符串 b 是否在字符串 a 中出现。该方法返回 b 在 a 中首次出现的字符位置;若未找到,则返回 -1。


当字符串中存在多个相同的子字符串时,indexOf() 以第一个出现的字符位置为准。

作者最新文章