arrayIndexOf.js 831 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. "use strict";
  2. // An example of benchmarking Arrays using benchmarksman
  3. exports.arrayIndexOf = {
  4. // setup
  5. "before": function () {
  6. this.arr = Array.apply(0, Array(1000)).map(function(v, i) {
  7. return i;
  8. });
  9. this.getIndexOf = function getIndexOf(arr, item) {
  10. for (var i = 0, l = arr.length; i < l; i++) {
  11. if (arr[i] === item)
  12. return i;
  13. }
  14. return -1;
  15. };
  16. },
  17. "fn native": function () {
  18. this.arr.indexOf(this.arr.length - 1);
  19. },
  20. "fn for loop": function () {
  21. this.getIndexOf(this.arr, this.arr.length - 1);
  22. },
  23. "inline for loop": function () {
  24. var arr = this.arr,
  25. item = this.arr.length - 1;
  26. for (var i = 0, l = arr.length; i < l; i++) {
  27. if (arr[i] === item)
  28. break;
  29. }
  30. },
  31. };
  32. // if run directly run benchmarks
  33. if (!module.main) return require("benchmarksman").runner(exports);