map vs. for vs. for in vs. forEach
Date tested:
2 years ago
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36 OPR/92.0.0.0
Test name
Executions per second
map
7249698.5 Ops/sec
for in
1051087.5 Ops/sec
for
1053352.5 Ops/sec
forEach
6718440.5 Ops/sec
Benchmark definition (click to collapse):
Script Preparation code:
var a = ["foo", "bar", "baz", "boom"]
Tests:
map
var b = a.map(function(c) { return c; });
for in
var b = []; for (var i in a) { b.push(a[i]); }
for
var b = []; for (var i = 0; i < a.length; i++) { b.push(a[i]); }
forEach
var b = []; a.forEach(function(c) { b.push(c); });
Open this result on MeasureThat.net