Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
switch vs if vs array
(version: 0)
Comparing performance of:
switch vs if vs array
Created:
4 years ago
by:
Guest
Jump to the latest result
HTML Preparation code:
<div class="test"></div>
Script Preparation code:
var v = 150;
Tests:
switch
switch (v) { case 1: break; case 2: break; case 3: break; case 4: break; case 5: break; case 6: break; case 7: break; case 8: break; case 9: break; case 10: break; case 11: break; case 12: break; case 13: break; case 14: break; case 15: break; case 16: break; case 17: break; case 18: break; case 19: break; case 20: break; case 21: break; case 22: break; case 23: break; case 24: break; case 25: break; case 26: break; case 27: break; case 28: break; case 29: break; case 30: break; case 31: break; case 32: break; case 33: break; case 34: break; case 35: break; case 36: break; case 37: break; case 38: break; case 39: break; case 40: break; case 41: break; case 42: break; case 43: break; case 44: break; case 45: break; case 46: break; case 47: break; case 48: break; case 49: break; case 50: break; case 51: break; case 52: break; case 53: break; case 54: break; case 55: break; case 56: break; case 57: break; case 58: break; case 59: break; case 60: break; case 61: break; case 62: break; case 63: break; case 64: break; case 65: break; case 66: break; case 67: break; case 68: break; case 69: break; case 70: break; case 71: break; case 72: break; case 73: break; case 74: break; case 75: break; case 76: break; case 77: break; case 78: break; case 79: break; case 80: break; case 81: break; case 82: break; case 83: break; case 84: break; case 85: break; case 86: break; case 87: break; case 88: break; case 89: break; case 90: break; case 91: break; case 92: break; case 93: break; case 94: break; case 95: break; case 96: break; case 97: break; case 98: break; default: break; }
if
if (v === 1) { } else if (v === 2) { } else if (v === 3) { } else if (v === 4) { } else if (v === 5) { } else if (v === 6) { } else if (v === 7) { } else if (v === 8) { } else if (v === 9) { }else if (v === 10) { }else if (v === 11) { }else if (v === 12) { }else if (v === 13) { }else if (v === 14) { }else if (v === 15) { }else if (v === 16) { }else if (v === 17) { }else if (v === 18) { }else if (v === 19) { }else if (v === 20) { }else if (v === 21) { }else if (v === 22) { }else if (v === 23) { }else if (v === 24) { }else if (v === 25) { } else if (v === 26) { } else if (v === 27) { } else if (v === 28) { } else if (v === 29) { } else if (v === 30) { } else if (v === 31) { } else if (v === 32) { } else if (v === 33) { }else if (v === 34) { }else if (v === 35) { }else if (v === 36) { }else if (v === 37) { }else if (v === 38) { }else if (v === 39) { }else if (v === 40) { }else if (v === 41) { }else if (v === 42) { }else if (v === 43) { }else if (v === 45) { }else if (v === 46) { }else if (v === 47) { }else if (v === 48) { }else if (v === 49) { }else if (v === 50) { } else if (v === 51) { } else if (v === 52) { } else if (v === 53) { } else if (v === 54) { } else if (v === 55) { } else if (v === 56) { } else if (v === 57) { } else if (v === 58) { }else if (v === 59) { }else if (v === 60) { }else if (v === 61) { }else if (v === 62) { }else if (v === 63) { }else if (v === 64) { }else if (v === 65) { }else if (v === 66) { }else if (v === 67) { }else if (v === 68) { }else if (v === 69) { }else if (v === 70) { }else if (v === 71) { }else if (v === 72) { }else if (v === 73) { }else if (v === 74) { } else if (v === 75) { } else if (v === 76) { } else if (v === 77) { } else if (v === 78) { } else if (v === 79) { } else if (v === 80) { } else if (v === 81) { } else if (v === 82) { }else if (v === 83) { }else if (v === 84) { }else if (v === 85) { }else if (v === 86) { }else if (v === 87) { }else if (v === 88) { }else if (v === 89) { }else if (v === 90) { }else if (v === 91) { }else if (v === 92) { }else if (v === 93) { }else if (v === 94) { }else if (v === 95) { }else if (v === 96) { }else if (v === 97) { }else if (v === 98) { }else {}
array
let array = ["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","", "","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","", "","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","", ""]; array[v];
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (3)
Previous results
Fork
Test case name
Result
switch
if
array
Fastest:
N/A
Slowest:
N/A
Latest run results:
Run details:
(Test run date:
2 years ago
)
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0
Browser/OS:
Chrome 120 on Windows
View result in a separate tab
Embed
Embed Benchmark Result
Test name
Executions per second
switch
13806977.0 Ops/sec
if
142257.1 Ops/sec
array
13743478.0 Ops/sec
Autogenerated LLM Summary
(model
llama3.2:3b
, generated one year ago):
Based on the provided benchmark results, I'll provide an analysis of the performance differences between various JavaScript operations. **Analysis:** 1. **`switch`**: The highest execution rate is observed in the `switch` test with 13,806,977 executions per second. This suggests that the Chrome browser's engine is optimized for this particular operation. 2. **`array`**: The `array` test has a relatively high execution rate of 13,743,478 executions per second. This indicates that the browser's array operations are efficient and well-optimized. 3. **`if`**: The `if` test has the lowest execution rate among the three tests at 142,257 executions per second. **Insights:** * The performance difference between `switch`, `array`, and `if` is likely due to the complexity and frequency of usage of each operation in JavaScript code. * The Chrome browser's engine appears to be optimized for `switch` and `array` operations, which are commonly used in conditional statements and array manipulations. **Recommendations:** 1. Use `switch` or `array` when possible instead of `if` to leverage the browser's optimization. 2. Optimize your code to minimize the use of `if` statements. 3. Keep in mind that these results are specific to Chrome 120 on Windows and may not reflect the performance characteristics of other browsers, operating systems, or JavaScript engines.
Related benchmarks:
Array.prototype.slice vs Array.from
slice vs array from
toggle classname string vs array vs classList
array.from.map vs array.from with map
array.from.map vs array.from with map vs spread with map
Comments
Confirm delete:
Do you really want to delete benchmark?