Tests:
  • lookup

    x
     
    const SOURCE = [
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      
    ];
    let a;
    var LOOKUP = {
      "ahello": function(v) {
        a = (v + "\n\n" + "hi");
      },
      "ahi": function(v) {
        a = (v + "\n\n" + "hello");
      },
      "abye": function(v) {
        a = (v + "\n\n" + "no");
      },
      "adie": function(v) {
        a = (v + "\n\n" + "you shot me");
      },
      "bhello": function(v) {
        a = (v + "\n\n" + "hi");
      },
      "bhi": function(v) {
        a = (v + "\n\n" + "hello");
      },
      "bbye": function(v) {
        a = (v + "\n\n" + "no");
      },
      "bdie": function(v) {
        a = (v + "\n\n" + "you shot me");
      },
      
      "hello": function(v) {
        a = (v + "\n\n" + "hi");
      },
      "hi": function(v) {
        a = (v + "\n\n" + "hello");
      },
      "bye": function(v) {
        a = (v + "\n\n" + "no");
      },
      "die": function(v) {
        a = (v + "\n\n" + "you shot me");
      },
    };
    for(let value of SOURCE){ LOOKUP[value](value)}
  • switch

     
    const SOURCE = [
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      'hello', 'hi', 'bye', 'die',
      'die', 'bye', 'hi', 'hello',
      
    ];
    let a;
    for(let value of SOURCE){
      switch (value) {
        case "ahello":
          a = (value + "\n\n" + "hi");
        case "ahi":
          a = (value + "\n\n" + "hello");
        case "abye":
          a = (value + "\n\n" + "no");
        case "adie":
          a = (value + "\n\n" + "you shot me");
        case "bhello":
          a = (value + "\n\n" + "hi");
        case "bhi":
          a = (value + "\n\n" + "hello");
        case "bbye":
          a = (value + "\n\n" + "no");
        case "bdie":
          a = (value + "\n\n" + "you shot me");
        case "hello":
          a = (value + "\n\n" + "hi");
        case "hi":
          a = (value + "\n\n" + "hello");
        case "bye":
          a =(value + "\n\n" + "no");
        case "die":
          a = (value + "\n\n" + "you shot me");
      }
    }
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    lookup
    switch

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 3 months ago)
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36
Chrome 131 on Mac OS X 10.15.7
View result in a separate tab
Test name Executions per second
lookup 451355.0 Ops/sec
switch 2911729.2 Ops/sec