Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36
Chrome 85
Windows
Desktop
4 years ago
Test name Executions per second
reduce 36.4 Ops/sec
forcycle 327.1 Ops/sec
Script Preparation code:
AخA
 
var ppl = []
for(var i=0; i<10000; i++) {
    ppl.push({ id: i, name: i+"" }) 
}
Tests:
  • reduce

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

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