Script Preparation code:
x
 
var funcMap = {
  'a': 1,
  'b': 2,
  'c': 3,
  'd': 4,
  'e': 5
}
function getRandomKey() {
  var rIdx = Math.floor(Math.random() * 5);
  return Object.keys(funcMap)[rIdx];
}
Tests:
  • using funcMap

     
    var key = getRandomKey();
    var x = funcMap[key];
    console.log(x);
  • using switch

     
    var key = getRandomKey();
    var x;
    switch(key) {
        case 'a': x = 1; break;
        case 'b': x = 2; break;
        case 'c': x = 3; break;
        case 'd': x = 4; break;
        case 'e': x = 5; break;
    }
    console.log(x);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    using funcMap
    using switch

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 8 years ago)
Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.101 Safari/537.36
Chrome 53 on Windows 7
View result in a separate tab
Test name Executions per second
using funcMap 89987.9 Ops/sec
using switch 88576.6 Ops/sec