JQuery each vs for loop vs _.each (lodash)

JavaScript performance comparison

Revision 35 of this test case created

Preparation code

<script src="//code.jquery.com/jquery-2.1.1.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/2.4.1/lodash.min.js"></script>

Preparation code output

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
JQuery
function getArrayMin(array) {
  var min = -1;
  $.each(array, function(idx, val) {
    if (min < 0 && val > 0) {
      min = val;
      return true;
    }
    if (val > 0 && min > val) {
      min = val
      return true;
    }
  });
  return min;
};


getArrayMin([0, 10, 11, 9, 924, 19238, 1248, 8, 0, 0, 2, -1, -5]);
pending…
for
function getArrayMin(array) {
  var min = -1;
  for (var i = 0, cache = array.length; i < cache; i += 1) {
    var val = array[i];
    if (min < 0 && val > 0) {
      min = val;
      continue;
    }
    if (val > 0 && min > val) {
      min = val
      continue;
    }
  }
  return min;
};


getArrayMin([0, 10, 11, 9, 924, 19238, 1248, 8, 0, 0, 2, -1, -5]);
pending…
_.each
function getArrayMin(array) {
  var min = -1;
  _.each(array, function(idx, val) {
    if (min < 0 && val > 0) {
      min = val;
      return true;
    }
    if (val > 0 && min > val) {
      min = val
      return true;
    }
  });
  return min;
};


getArrayMin([0, 10, 11, 9, 924, 19238, 1248, 8, 0, 0, 2, -1, -5]);
pending…

Compare results of other browsers

Revisions

You can edit these tests or add even more tests to this page by appending /edit to the URL. Here’s a list of current revisions for this page:

0 comments

Add a comment