JavaScript indexOf

The JavaScript indexof method returns the index position of the first occurrence of a specified string. If the specified string is not found, the indexof function will return -1. The syntax of the JavaScript indexof function is

String_Object.indexof(Substring, Starting_Position)
  • Substring: String you want to search inside the string_Object.
  • Starting_Position or from the index (optional): If you want to specify the starting point (starting index position), please select the index value here.

If the Starting_Position is a Negative number, the indexof starts looking from 0. If the Starting_Position is Out of range, it starts looking from the highest index number.

JavaScript indexof Example

This example will help you understand this method. This third line code starts the search, finds the index position of a substring ‘Script,’ and stores the value in Str3.

In the following line, we look for a non-existing “abc” inside Str1. Since JavaScript IndexOf doesn’t find the substring, it returns -1 as the output.

For Str5, we are looking for “abc” inside Str2.

From the above, though abc reappeared multiple times, the Javascript indexof string function wrote the first occurrence’s index position. Now, let us modify the starting position from default 0 to 10. It means the below code returns the first occurrence of string abc starting at 10.

<!DOCTYPE html>
<html>
<head>
    <title> Example</title>
</head>
<body>
    <h1> Example </h1>
<script>
 var Str1 = "Learn JavaScript at Tutorial Gateway.org";
 var Str2 = "We are abc working at abc company";
 var Str3 = Str1.indexOf("Script");
 var Str4 = Str1.indexOf("abc"); // Non existing item
 var Str5 = Str2.indexOf("abc");
 var Str6 = Str1.indexOf("Script", 5);
 var Str7 = Str2.indexOf("abc", 10);
 
 document.write("<b> Index position of Script is:</b> " + Str3);
 document.write("<br \> <b> Index position of abc is:</b> " + Str4);
 document.write("<br \> <b> Index position of abc is:</b> " + Str5);
 document.write("<br \> <b> Index position of Script is:</b> " + Str6);
 document.write("<br \> <b> Index position of abc is:</b> " + Str7);
</script>
</body>
</html>

TIP: The index position in JavaScript Function will start from 0, Not 1.

JavaScript IndexOf