title: indexOf empty string is zero. why?
body: <p>why this is happening in javascript?</p>
  
  <pre><code>'abc'.indexOf('a');        //0
  'abc'.indexOf('');         //0
  </code></pre>
  
  <p>while in the other falsy values, the value is -1:</p>
  
  <pre><code>'abc'.indexOf();           //-1
  'abc'.indexOf(false);      //-1
  'abc'.indexOf(undefined);  //-1
  </code></pre>
  
  <p>i have seen also those questions: <br>
  <a href="https://stackoverflow.com/questions/28692565/why-javascript-indexof-empty-string-always-returning-zero">Q1</a> didnt understand the answer in depth.<br>
  <a href="https://stackoverflow.com/questions/2683466/java-string-indexof-and-empty-strings">Q2</a> in java and not javascript.<br></p>