map vs native for loop (v41)

Revision 41 of this benchmark created by James on


Description

test the performance of the jquery map, built-in Array.map, and native for loop map

Preparation HTML

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

Setup

testArray = new Array(500);
    for(var i = 0; i < 500; i++) {
      testArray[i] = i;
    }
    
    numberOp = function(x, y, z) {
      return x*y;
    }
    
    stringOp = function(x, y, z) {
      return "example " + x;
    }
    
    
    mapForLoop = function(array, mapFunction) {
      var arrayLen = array.length;
      var newArray = new Array(arrayLen);
      for(var i = 0; i < arrayLen; i++) {
        newArray[i] = mapFunction(array[i], i, array);
      }
    
      return newArray;
    }
    
    mapBuiltIn = function(array, mapFunction) {
      return array.map(mapFunction);
    }
    
    mapJQuery = function(array, mapFunction) {
      return $.map(array, mapFunction);
    }

Test runner

Ready to run.

Testing in
TestOps/sec
number jquery map
var result = mapJQuery(testArray, numberOp);
ready
number for loop map
var result = mapForLoop(testArray, numberOp);
ready
number built in js map
var result = mapBuiltIn(testArray, numberOp);
ready
string jquery map
var result = mapJQuery(testArray, stringOp);
ready
string for loop map
var result = mapForLoop(testArray, stringOp);
ready
string built-in map
var result = mapBuiltIn(testArray, stringOp);
ready

Revisions

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