Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.67 Safari/537.36
Chrome 87
Mac OS X 10.15.7
Desktop
4 years ago
Test name Executions per second
reduce 0.1 Ops/sec
for 35.6 Ops/sec
Script Preparation code:
AخA
 
var ppl = []
for(var i=0; i<100000; i++) {
    ppl.push({ id: i, name: i+"" }) 
}
Tests:
  • reduce

     
    var byId = ppl.reduce((stored, current) => ({ ...stored, [current.id]: current }), {});
  • for

     
    var byId = {}
    for(var i=0;i<ppl.length;i++) {
      byId[ppl[i].id] = ppl[i]
    }