Introduced in ES6, or ECMAScript6, the .includes()
method has simplified the way developers are able to find out whether a specific string contains a certain sequence of characters. This string method can be called directly on a string and takes two arguments: the target string to be searched for and an optional index from where the search should start.
Quite similar to the indexOf
method, the .includes()
method returns a boolean value, true
if the string contains the specified characters, and false
if not. However, unlike indexOf
, this method does not return an index, making it more straightforward for use in conditional statements.
Here is how you would use the .includes()
method in practice:
let sentence = "The quick brown fox jumps over the lazy dog.";
let word = "fox";
console.log(sentence.includes(word));
// Output: true
In this example, we see that the string "sentence" does include the "fox", and therefore, true
is returned.
While the .includes()
method is very straightforward and easy to use, it's important to bear in mind that JavaScript is case sensitive. This means that "FOX"
, "Fox"
and "fox"
would be treated as distinct strings. So, to avoid unintended results, it might be wise to convert your strings to a uniform case before performing .includes()
method.
Moreover, remember that .includes()
method accepts an optional second parameter, which is the position in this string at which to begin searching.
let sentence = "The quick brown fox jumps over the lazy dog.";
console.log(sentence.includes("fox", 20));
// Output: true
In the above example, it started searching for "fox" from the 20th position, and since "fox" does exist after this position, it returned true.
Hence, the .includes()
method is a potent tool enabling developers to perform string searches in a more readable and intuitive way, a welcome addition to the ES6 toolkit.