Difference between indexOf() and search() in JavaScript

This post is published to differentiate between the two search methods of JavaScript, that are:

indexOf() Vs. search()

The only two difference between these two are:

  • indexOf() method can not perform search against regular expression, whereas search() method can
  • search() method can not take the second argument, that is the position argument, whereas indexOf() method takes. The position or startIndex argument is used when we need to start searching from specified index, instead of, from start

Both the methods returns the index of first character of specified value or substring. Otherwise returns -1 in case if specified value does not exists in the specified string. For example:

HTML with JavaScript Code
<!DOCTYPE html>
<html>
<body>

   <p>----Using indexOf()----<br>
      The index of 'Fun' = <span id="mySpan1"></span></p>
   <p>----Using search()----<br>
      The index of 'Fun' = <span id="mySpan2"></span></p>

   <script>
      let x = "JavaScript is Fun. Is not it?";
      let y = x.indexOf("Fun");
      document.getElementById("mySpan1").innerHTML = y;

      let a = "JavaScript is Fun. Is not it?";
      let b = a.search("Fun");
      document.getElementById("mySpan2").innerHTML = b;
   </script>
   
</body>
</html>
Output

----Using indexOf()----
The index of 'Fun' =

----Using search()----
The index of 'Fun' =

When indexOf() is Useful?

The indexOf() method is useful, when we need to search a value from specified position. For example:

HTML with JavaScript Code
<!DOCTYPE html>
<html>
<body>

   <p id="myPara"></p>

   <script>
      let mystr = "Javascript is fun, is not it?";
      let pos = mystr.indexOf("is", 15);

      document.getElementById("myPara").innerHTML = pos;
   </script>
   
</body>
</html>
Output

This is the only scenario when indexOf() method comes into picture, when talking about searching the position of specified value in a string. Otherwise search() method is prominent everywhere.

JavaScript Online Test


« Previous Tutorial Next Tutorial »



Like/Share Us on Facebook 😋