Tests:
  • switch

    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;
    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");
      }
    }
  • simple if else

     
    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){
      if (value == "ahello") {
          a = (value + "\n\n" + "hi");
      } else if (value == "ahi"){
          a = (value + "\n\n" + "hello");
        } else if (value == "abye"){
          a = (value + "\n\n" + "no");
        } else if (value == "adie"){
          a = (value + "\n\n" + "you shot me");
        } else if (value == "bhello"){
          a = (value + "\n\n" + "hi");
        } else if (value == "bhi"){
          a = (value + "\n\n" + "hello");
        } else if (value == "bbye"){
          a = (value + "\n\n" + "no");
        } else if (value == "bdie"){
          a = (value + "\n\n" + "you shot me");
        } else if (value == "hello"){
          a = (value + "\n\n" + "hi");
        } else if (value == "hi"){
          a = (value + "\n\n" + "hello");
        } else if (value == "bye"){
          a =(value + "\n\n" + "no");
        } else if (value == "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
    switch
    simple if else

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 2 months ago)
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36
Chrome 132 on Windows
View result in a separate tab
Test name Executions per second
switch 3643612.5 Ops/sec
simple if else 4398175.0 Ops/sec