Map vs for loop (v3)

Revision 3 of this benchmark created on


Description

Compares Array.map vs for loop

Setup

var array = [];
    var array_map = Array.prototype.map.bind(array);
    for(var i = 0; i < 1000; i++) {
       array.push(1);
    }
    
    function mapper(item) {
        return item * 2
    }
    
    function custom_map(callback, items) {
       var ret = []
       for(var i = 0; i < items.length; i++) {
           ret.push(callback(items[i]));
       }
       return ret;
    }

Test runner

Ready to run.

Testing in
TestOps/sec
Array.map lambda
var result = array.map(function(item) { return item * 2; })
ready
Array.map callback
var result = array.map(mapper)
 
ready
for loop inline
var result = []
for(var i = 0; i < array.length; i++) {
    result.push(array[i] * 2);
}
ready
for loop callback
var result = []
for(var i = 0; i < array.length; i++) {
    result.push(mapper(array[i]));
}
ready
custom_map
var result = custom_map(mapper, array);
ready
prototype map
var result = array_map(mapper);
ready

Revisions

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