Notice: Some MDN email addresses and hashed passwords were temporarily posted on a publicly accessible server. http://blog.mozilla.org/security/2014/08/01/mdn-database-disclosure/

Your Search Results

    String.prototype.substring()

    Summary

    The substring() method returns a subset of a string between one index and another, or through the end of the string.

    Syntax

    str.substring(indexA[, indexB])

    Parameters

    indexA
    An integer between 0 and the length of the string.
    indexB
    (optional) An integer between 0 and the length of the string.

    Description

    substring extracts characters from indexA up to but not including indexB. In particular:

    • If indexA equals indexB, substring returns an empty string.
    • If indexB is omitted, substring extracts characters to the end of the string.
    • If either argument is less than 0 or is NaN, it is treated as if it were 0.
    • If either argument is greater than stringName.length, it is treated as if it were stringName.length.

    If indexA is larger than indexB, then the effect of substring is as if the two arguments were swapped; for example, str.substring(1, 0) == str.substring(0, 1).

    Examples

    Example: Using substring

    The following example uses substring to display characters from the string "Mozilla":

    // assumes a print function is defined
    var anyString = "Mozilla";
    
    // Displays "Moz"
    console.log(anyString.substring(0,3));
    console.log(anyString.substring(3,0));
    
    // Displays "lla"
    console.log(anyString.substring(4,7));
    console.log(anyString.substring(7,4));
    
    // Displays "Mozill"
    console.log(anyString.substring(0,6));
    
    // Displays "Mozilla"
    console.log(anyString.substring(0,7));
    console.log(anyString.substring(0,10));
    

    Example: Replacing a substring within a string

    The following example replaces a substring within a string. It will replace both individual characters and substrings. The function call at the end of the example changes the string "Brave New World" into "Brave New Web".

    function replaceString(oldS, newS, fullS) {
    // Replaces oldS with newS in the string fullS
      for (var i = 0; i < fullS.length; i++) {
        if (fullS.substring(i, i + oldS.length) == oldS) {
         fullS = fullS.substring(0, i) + newS + fullS.substring(i + oldS.length, fullS.length);
        }
      }
      return fullS;
    }
    
    replaceString("World", "Web", "Brave New World");

    Note that this can result in an infinite loop if oldS is itself a substring of newS -- for example, if you attempted to replace "World" with "OtherWorld" here. A better method for replacing strings is as follows:

    function replaceString(oldS, newS,fullS){
      return fullS.split(oldS).join(newS);
    }

    The code above serves as an example for substring operations. If you need to replace substrings, most of the time you will want to use String.prototype.replace().

    Specifications

    Specification Status Comment
    ECMAScript 1st Edition. Standard Implemented in JavaScript 1.0
    ECMAScript Language Specification 5.1th Edition (ECMA-262) Standard  
    ECMAScript Language Specification 6th Edition (ECMA-262) Draft  

    Browser compatibility

    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)

    See also

    Document Tags and Contributors

    Last updated by: da-z,
    Hide Sidebar