String.prototype.includes()
The includes() method performs a case-sensitive search to determine whether one string may
be found within another string, returning true or false as
appropriate.
Syntax
includes(searchString)
includes(searchString, position)
Parameters
searchString-
A string to be searched for within
str. positionOptional-
The position within the string at which to begin searching for
searchString. (Defaults to0.)
Return value
true if the search string is found anywhere within the
given string; otherwise, false if not.
Description
This method lets you determine whether or not a string includes another string.
Case-sensitivity
The includes() method is case sensitive. For example, the following
expression returns false:
'Blue Whale'.includes('blue') // returns false
Polyfill
This method has been added to the ECMAScript 2015 specification and may not be available in all JavaScript implementations yet.
However, you can easily polyfill this method:
if (!String.prototype.includes) {
String.prototype.includes = function(search, start) {
'use strict';
if (search instanceof RegExp) {
throw TypeError('first argument must not be a RegExp');
}
if (start === undefined) { start = 0; }
return this.indexOf(search, start) !== -1;
};
}
Examples
Using includes()
const str = 'To be, or not to be, that is the question.'
console.log(str.includes('To be')) // true
console.log(str.includes('question')) // true
console.log(str.includes('nonexistent')) // false
console.log(str.includes('To be', 1)) // false
console.log(str.includes('TO BE')) // false
console.log(str.includes('')) // true
Specifications
| Specification |
|---|
| ECMAScript Language Specification # sec-string.prototype.includes |
Browser compatibility
BCD tables only load in the browser