if...else vs switch (v2)

Revision 2 of this benchmark created on


Preparation HTML

<script>
  var i = 0,
      letters = "abcdefghijklmnopqrstuvwxyz".split(""),
      len = letters.length;
</script>

Test runner

Ready to run.

Testing in
TestOps/sec
switch
for (var i = 0; i < len; i++) {
 var letter = letters[i];
 switch (letter) {
 case "a":
  break;
 case "b":
  break;
 case "c":
  break;
 case "d":
  break;
 case "e":
  break;
 case "f":
  break;
 case "g":
  break;
 case "h":
  break;
 case "i":
  break;
 case "j":
  break;
 case "k":
  break;
 case "l":
  break;
 case "m":
  break;
 case "n":
  break;
 case "o":
  break;
 case "p":
  break;
 case "q":
  break;
 case "r":
  break;
 case "s":
  break;
 case "t":
  break;
 case "u":
  break;
 case "v":
  break;
 case "w":
  break;
 case "x":
  break;
 case "y":
  break;
 case "z":
  break;
 default:

 }
}
ready
if...else
for (var i = 0; i < len; i++) {
 var letter = letters[i];
 if (letter == "a") {} else if (letter == "b") {} else if (letter == "c") {} else if (letter == "d") {} else if (letter == "e") {} else if (letter == "f") {} else if (letter == "g") {} else if (letter == "h") {} else if (letter == "i") {} else if (letter == "j") {} else if (letter == "k") {} else if (letter == "l") {} else if (letter == "m") {} else if (letter == "n") {} else if (letter == "o") {} else if (letter == "p") {} else if (letter == "q") {} else if (letter == "r") {} else if (letter == "s") {} else if (letter == "t") {} else if (letter == "u") {} else if (letter == "v") {} else if (letter == "w") {} else if (letter == "x") {} else if (letter == "y") {} else if (letter == "z") {} else {}
}
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.