JQuery each vs for loop

JavaScript performance comparison

Revision 2 of this test case created

Preparation code

<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.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; i < array.length; 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…
for++
function getArrayMin(array) {
    var min = -1;
    for(var i = 0; i < array.length; i++) {
        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…
for cached
function getArrayMin(array) {
    var min = -1;
    var i = 0;
    var len = array.length;
    for(i; i < len; i++) {
        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…
while
function getArrayMin(array) {
    var min = -1;
    var i = 0;
    var len = array.length;
    while(i < len) {
        var val = array[i];
        if (min < 0 && val > 0) {
            min = val;
            continue;
        }
        if (val > 0 && min > val) {
            min = val
            continue;
        }
    i++;
    }
    return min;
};


getArrayMin([0, 10, 11, 9, 924, 19238, 1248, 8, 0, 0, 2, -1, - 5]);
pending…
while pop
function getArrayMin(array) {
    var min = -1;
    while(val = array.pop()) {
        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…

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