Apply your JS skills to key Mozilla projects as an MDN Fellow! http://mzl.la/MDNFellowship

mozilla
您的搜索结果

    String.prototype.indexOf()

    概述

    indexOf() 方法返回指定值在字符串对象中首次出现的位置。从 fromIndex 位置开始查找,如果不存在,则返回 -1。

    语法

    str.indexOf(searchValue[, fromIndex])

    参数

    searchValue
    一个字符串表示被查找的值。
    fromIndex
    表示调用该方法的字符串中开始查找的位置。可以是任意整数。默认值为 0。如果 fromIndex < 0 则查找整个字符串(如同传进了 0)。如果 fromIndex >= str.length,则该方法返回 -1,除非被查找的字符串是一个空字符串,此时返回 str.length。

    描述

    字符串中的字符被从左向右索引。首字符的索引(index)为 0,字符串 stringName 的最后一个字符的索引是 stringName.length - 1

    "Blue Whale".indexOf("Blue");     // returns  0
    "Blue Whale".indexOf("Blute");    // returns -1
    "Blue Whale".indexOf("Whale", 0); // returns  5
    "Blue Whale".indexOf("Whale", 5); // returns  5
    "Blue Whale".indexOf("", 9);      // returns  9
    "Blue Whale".indexOf("", 10);     // returns 10
    "Blue Whale".indexOf("", 11);     // returns 10

    区分大小写(case-sensitivity)

    indexOf 方法区分大小写。例如,下面的表达式返回 -1:

    "Blue Whale".indexOf("blue") // returns -1
    

    检测是否存在某字符串

    当检测某个字符串是否存在于另一个字符串中时,可使用下面的方法:

    "Blue Whale".indexOf("Blue") != -1; // true
    "Blue Whale".indexOf("Bloe") != -1; // false

    示例

    例子:使用indexOflastIndexOf

    下例使用 indexOflastIndexOf 方法定位字符串中 "Brave new world" 的值。

    var anyString = "Brave new world";
    
    console.log("The index of the first w from the beginning is " + anyString.indexOf("w"));
    // Displays 8
    console.log("The index of the first w from the end is " + anyString.lastIndexOf("w")); 
    // Displays 10
    
    console.log("The index of 'new' from the beginning is " + anyString.indexOf("new"));   
    // Displays 6
    console.log("The index of 'new' from the end is " + anyString.lastIndexOf("new"));
    // Displays 6
    

    例子:indexOf 和区分大小写

    下例定义了两个字符串变量。两个变量包含相同的字符串,除了第二个字符串中的某些字符为大写。第一个 log 方法输出 19。但是由于 indexOf 方法区分大小写,因此不会在 myCapString 中发现字符串 “cheddar",结果第二个 log 方法输出 -1。

    var myString    = "brie, pepper jack, cheddar";
    var myCapString = "Brie, Pepper Jack, Cheddar";
    
    console.log('myString.indexOf("cheddar") is ' + myString.indexOf("cheddar"));    
    // Displays 19
    console.log('myCapString.indexOf("cheddar") is ' + myCapString.indexOf("cheddar")); 
    // Displays -1

    例子:使用 indexOf 统计一个字符串中某个字母出现的次数

    下例,count 为字母 x 在字符串 str 中出现的次数:

    count = 0;
    pos = str.indexOf("x");
    
    while ( pos != -1 ) {
       count++;
       pos = str.indexOf( "x",pos + 1 );
    }

    规范

    Specification Status Comment
    ECMAScript 1st Edition. Standard Initial definition.
    ECMAScript 5.1 (ECMA-262)
    String.prototype.indexOf
    Standard  
    ECMAScript 6 (ECMA-262)
    String.prototype.indexOf
    Draft  

    浏览器兼容性

    Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
    Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
    Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
    Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

    相关链接

    文档标签和贡献者

    此页面的贡献者有: AlexChao
    最后编辑者: AlexChao,