The startsWith() method determines whether a string begins with the characters of a specified string, returning true or false as appropriate.


str.startsWith(searchString[, position])


The characters to be searched for at the start of this string.
position Optional
The position in this string at which to begin searching for searchString; defaults to 0.

Return value

true if the given characters are found at the beginning of the string; otherwise, false.


This method lets you determine whether or not a string begins with another string. This method is case-sensitive.


Using startsWith()

var str = 'To be, or not to be, that is the question.';

console.log(str.startsWith('To be'));         // true
console.log(str.startsWith('not to be'));     // false
console.log(str.startsWith('not to be', 10)); // true


This method has been added to the ECMAScript 2015 specification and may not be available in all JavaScript implementations yet. However, you can polyfill String.prototype.startsWith() with the following snippet:

if (!String.prototype.startsWith) {
    String.prototype.startsWith = function(searchString, position){
      position = position || 0;
      return this.substr(position, searchString.length) === searchString;

A more robust and optimized Polyfill is available on GitHub by Mathias Bynens.


Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'String.prototype.startsWith' in that specification.
Standard Initial definition.
ECMAScript Latest Draft (ECMA-262)
The definition of 'String.prototype.startsWith' in that specification.

Browser compatibility

Feature Chrome Firefox (Gecko) Edge Internet Explorer Opera Safari
Basic support 41 17 (17) (Yes) No support 28 9
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support No support 36 17.0 (17) No support No support 9


Please note that although the MSDN documentation for this method ( clearly indicates that it is not supported in Internet Explorer, the method does seem to work, as far back as Internet Explorer 8.

See also