欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

js中indexOf()和lastIndexOf()方法 JavaScript 

程序员文章站 2024-03-15 20:37:48
...
indexOf()和lastIndexOf()方法——一个字符串中查找另一个字符串

    indexOf()方法和lastIndexOf()方法用于查找一个字符串中是否包含了另一个字符串。包含在另一个字符串中的字符串通常称为字符串。仅需要某串信息中的一部分时,就可以使用这两个方法。例如,在“小测试”程序中,用户输入一个文本答案,就需要检查该字符串是否包含了某些的关键字。
    indexOf()和lastIndexOf()方法都带两个参数:
    1 需要查找的字符串
    2 开始查找的字符位置(可选)
    字符位置从0开始。如果不包含第二个参数,就从字符串开头开始搜索
    indexOf()和lastIndexOf()方法的返回值是查找到的子串在字符串中的位置,它也是基于0的,因此,如果在字符串开头找到子串,则返回0.如果没有找到子串,则返回-1.
    例如,要在字符串“Hello jeremy.How are you Jeremy”中查找子串“Jeremy”,可以使用如下代码:
    var myString = "Hello jeremy.How are you Jeremy";
    var foundAtPosition;

    foundAtPosition = myString.indexOf("Jeremy");
    alert(foundAtPosition);

    以上代码将弹出一个消息框,其中包含数组26,这是“Jeremy”的字符位置,为什么是26呢?显然,它是字符串中第二个“Jeremy”出现的位置,而不是第一个“jeremy”出现的位置6。这是因为JavaScript是区分大小写,如果输入的是IndexOf(),而不是indexOf(),则JavaScript会报告错误。同样,“jeremy”与“Jeremy”是不同的,大小写错误非常普遍,即使是编程专家也很容易犯此类错误。所以编程时最好特别注意。
    前面介绍了indexOf()方法,但lastIndexOf()方法与之区别是indexOf()方法从字符串的开头或第二个参数指定的位置开始向后查找,而lastIndexOf()方法从字符串的结尾或指定的位置向字符串的开头查找。
    
    var myString = "Hello Jeremy.How are you Jeremy";
    var foundAtPosition;

    foundAtPosition = myString.indexOf("Jeremy");
    alert(foundAtPosition);

    coundAtPosition = myString.lastIndexOf("Jeremy");
    alert(foundAtPosition);

    在本例子中,第一次使用indexOf(),找到第一个“Jerermy”(把上一个例子中的“jeremy”改为正确的大小写),警告框显示这个结果,即字符串位置6,接着使用lastIndexOf()来查找,它从字符串的结尾开始查找,因此找到的第一个“Jeremy”是字符串中字符位置为26的最后一个“Jeremy”,因此,第二个警告框显示结果为26.
相关标签: JavaScript