map vs native for loop (v13)

Revision 13 of this benchmark created by Ceane Lamerez on


Description

test the performance of the jquery map versus a native for loop map

Preparation HTML

<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js">
</script>
<script src="//underscorejs.org/underscore-min.js"></script>

Setup

testArray = new Array(100);
    for (var i = 0; i < 100; i++) {
      testArray[i] = i;
    }
    var o = function(arr, fn) {
        var lit = new Array(arr.length);
        for (var n = 0, lt = arr.length; n < lt; n++) {
          lit[n] = fn(arr[n]);
        }
        return lit;
        }
        
    opt = o;
    
    map = function(array, mapFunction) {
      var newArray = new Array(array.length);
      for (var i = 0; i < array.length; i++) {
        newArray[i] = mapFunction(array[i]);
      }
    
      return newArray;
    }
    
    double = function(x) {
      return x * 2;
    }

Test runner

Ready to run.

Testing in
TestOps/sec
jquery map
var result = $.map(testArray, double);
ready
optimized loop map
var result = opt(testArray, double);
ready
for loop map
var result = map(testArray, double);
ready
Array.prototype.map
var result = testArray.map(double);
ready
Underscore.map
var result = _.map(testArray, double)
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.