Script Preparation code:
x
 
var reportsArr = [{
    id: `john`,
    text: `one`
}, {
    id: `jane`,
    text: `two`
}, {
    id: `bob`,
    text: `three`
}]
var reportsObj = {
    ['john']: {
        text: `one`
    },
    [`jane`]: {
        text: `two`
    },
    [`bob`]: {
        text: `three`
    }
}
var i = 0,
    count = 10000,
    jane;
Tests:
  • Array.findIndex lookup

     
    for (i = 0; i < count; i++) {
      janeIndex = reportsArr.findIndex(el => el.id === 'jane');
      jane = reportsArr[janeIndex]
    }
  • Obj lookup

     
    for (i = 0; i < count; i++) {
      jane = reportsObj['jane'];
    }
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    Array.findIndex lookup
    Obj lookup

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 3 years ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36
Chrome 96 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
Array.findIndex lookup 285.1 Ops/sec
Obj lookup 739.7 Ops/sec