Test case details

Preparation Code

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/2.4.1/lodash.js"></script> <script>     var ar = [];     for(z=0;z<500000;z++) {         ar.push(Math.floor(Math.random()*10000));     }     function indexOfFor(ar,v){     for (var i = 0,l=ar.length; i < l; i++) {      if (ar[i] === v) {         return i;       }     }     return -1;   }   function indexOfForIn(ar,v){     for (var i in ar) {      if (ar.hasOwnProperty(i) && (ar[i] === v)) {         return i;       }     }     return -1;   }     function indexOfWhile(ar,v){     var i=0,a;     while (a=ar[i++]) {      if (a === v) {         return i-1;       }     }     return -1;   }     function indexOf(ar,v){     return ar.indexOf(v);   }   function lodashIndexOf(ar,v){     return _.contains(ar,v);   } </script>

Test cases

Test #1

var a = indexOfFor(ar,100);

Test #2

var a = indexOfWhile(ar,100);

Test #3

var a = indexOf(ar,100);

Test #4

var a = lodashIndexOf(ar,100);

Test #5

var a = indexOfForIn(ar, 100);