switch case order

Benchmark created on


Preparation HTML

<script> 

var a = []; 

for(var i = 1; i!==101;i++) a.push(i); 
var i = 0; 

function next() { return i = ((i+1)%100) }
function nop(x) {}

</script>

Test runner

Ready to run.

Testing in
TestOps/sec
if-else
var val = next(); 

if(val === 1 ) { nop(99);}
else if(val === 2 ) { nop(98);}
else if(val === 3 ) { nop(97);}
else if(val === 4 ) { nop(96);}
else if(val === 5 ) { nop(95);}
else if(val === 6 ) { nop(94);}
else if(val === 7 ) { nop(93);}
else if(val === 8 ) { nop(92);}
else if(val === 9 ) { nop(91);}
else if(val === 10 ) { nop(90);}
else if(val === 11 ) { nop(89);}
else if(val === 12 ) { nop(88);}
else if(val === 13 ) { nop(87);}
else if(val === 14 ) { nop(86);}
else if(val === 15 ) { nop(85);}
else if(val === 16 ) { nop(84);}
else if(val === 17 ) { nop(83);}
else if(val === 18 ) { nop(82);}
else if(val === 19 ) { nop(81);}
else if(val === 20 ) { nop(80);}
else if(val === 21 ) { nop(79);}
else if(val === 22 ) { nop(78);}
else if(val === 23 ) { nop(77);}
else if(val === 24 ) { nop(76);}
else if(val === 25 ) { nop(75);}
else if(val === 26 ) { nop(74);}
else if(val === 27 ) { nop(73);}
else if(val === 28 ) { nop(72);}
else if(val === 29 ) { nop(71);}
else if(val === 30 ) { nop(70);}
else if(val === 31 ) { nop(69);}
else if(val === 32 ) { nop(68);}
else if(val === 33 ) { nop(67);}
else if(val === 34 ) { nop(66);}
else if(val === 35 ) { nop(65);}
else if(val === 36 ) { nop(64);}
else if(val === 37 ) { nop(63);}
else if(val === 38 ) { nop(62);}
else if(val === 39 ) { nop(61);}
else if(val === 40 ) { nop(60);}
else if(val === 41 ) { nop(59);}
else if(val === 42 ) { nop(58);}
else if(val === 43 ) { nop(57);}
else if(val === 44 ) { nop(56);}
else if(val === 45 ) { nop(55);}
else if(val === 46 ) { nop(54);}
else if(val === 47 ) { nop(53);}
else if(val === 48 ) { nop(52);}
else if(val === 49 ) { nop(51);}
else if(val === 50 ) { nop(50);}
else if(val === 51 ) { nop(49);}
else if(val === 52 ) { nop(48);}
else if(val === 53 ) { nop(47);}
else if(val === 54 ) { nop(46);}
else if(val === 55 ) { nop(45);}
else if(val === 56 ) { nop(44);}
else if(val === 57 ) { nop(43);}
else if(val === 58 ) { nop(42);}
else if(val === 59 ) { nop(41);}
else if(val === 60 ) { nop(40);}
else if(val === 61 ) { nop(39);}
else if(val === 62 ) { nop(38);}
else if(val === 63 ) { nop(37);}
else if(val === 64 ) { nop(36);}
else if(val === 65 ) { nop(35);}
else if(val === 66 ) { nop(34);}
else if(val === 67 ) { nop(33);}
else if(val === 68 ) { nop(32);}
else if(val === 69 ) { nop(31);}
else if(val === 70 ) { nop(30);}
else if(val === 71 ) { nop(29);}
else if(val === 72 ) { nop(28);}
else if(val === 73 ) { nop(27);}
else if(val === 74 ) { nop(26);}
else if(val === 75 ) { nop(25);}
else if(val === 76 ) { nop(24);}
else if(val === 77 ) { nop(23);}
else if(val === 78 ) { nop(22);}
else if(val === 79 ) { nop(21);}
else if(val === 80 ) { nop(20);}
else if(val === 81 ) { nop(19);}
else if(val === 82 ) { nop(18);}
else if(val === 83 ) { nop(17);}
else if(val === 84 ) { nop(16);}
else if(val === 85 ) { nop(15);}
else if(val === 86 ) { nop(14);}
else if(val === 87 ) { nop(13);}
else if(val === 88 ) { nop(12);}
else if(val === 89 ) { nop(11);}
else if(val === 90 ) { nop(10);}
else if(val === 91 ) { nop(9);}
else if(val === 92 ) { nop(8);}
else if(val === 93 ) { nop(7);}
else if(val === 94 ) { nop(6);}
else if(val === 95 ) { nop(5);}
else if(val === 96 ) { nop(4);}
else if(val === 97 ) { nop(3);}
else if(val === 98 ) { nop(2);}
else if(val === 99 ) { nop(1);}
else if(val === 100 ) { nop(0);}
ready
switch ordered
var val = next(); 

switch(val) { 
case 1: nop(99); break; 
case 2: nop(98); break; 
case 3: nop(97); break; 
case 4: nop(96); break; 
case 5: nop(95); break; 
case 6: nop(94); break; 
case 7: nop(93); break; 
case 8: nop(92); break; 
case 9: nop(91); break; 
case 10: nop(90); break; 
case 11: nop(89); break; 
case 12: nop(88); break; 
case 13: nop(87); break; 
case 14: nop(86); break; 
case 15: nop(85); break; 
case 16: nop(84); break; 
case 17: nop(83); break; 
case 18: nop(82); break; 
case 19: nop(81); break; 
case 20: nop(80); break; 
case 21: nop(79); break; 
case 22: nop(78); break; 
case 23: nop(77); break; 
case 24: nop(76); break; 
case 25: nop(75); break; 
case 26: nop(74); break; 
case 27: nop(73); break; 
case 28: nop(72); break; 
case 29: nop(71); break; 
case 30: nop(70); break; 
case 31: nop(69); break; 
case 32: nop(68); break; 
case 33: nop(67); break; 
case 34: nop(66); break; 
case 35: nop(65); break; 
case 36: nop(64); break; 
case 37: nop(63); break; 
case 38: nop(62); break; 
case 39: nop(61); break; 
case 40: nop(60); break; 
case 41: nop(59); break; 
case 42: nop(58); break; 
case 43: nop(57); break; 
case 44: nop(56); break; 
case 45: nop(55); break; 
case 46: nop(54); break; 
case 47: nop(53); break; 
case 48: nop(52); break; 
case 49: nop(51); break; 
case 50: nop(50); break; 
case 51: nop(49); break; 
case 52: nop(48); break; 
case 53: nop(47); break; 
case 54: nop(46); break; 
case 55: nop(45); break; 
case 56: nop(44); break; 
case 57: nop(43); break; 
case 58: nop(42); break; 
case 59: nop(41); break; 
case 60: nop(40); break; 
case 61: nop(39); break; 
case 62: nop(38); break; 
case 63: nop(37); break; 
case 64: nop(36); break; 
case 65: nop(35); break; 
case 66: nop(34); break; 
case 67: nop(33); break; 
case 68: nop(32); break; 
case 69: nop(31); break; 
case 70: nop(30); break; 
case 71: nop(29); break; 
case 72: nop(28); break; 
case 73: nop(27); break; 
case 74: nop(26); break; 
case 75: nop(25); break; 
case 76: nop(24); break; 
case 77: nop(23); break; 
case 78: nop(22); break; 
case 79: nop(21); break; 
case 80: nop(20); break; 
case 81: nop(19); break; 
case 82: nop(18); break; 
case 83: nop(17); break; 
case 84: nop(16); break; 
case 85: nop(15); break; 
case 86: nop(14); break; 
case 87: nop(13); break; 
case 88: nop(12); break; 
case 89: nop(11); break; 
case 90: nop(10); break; 
case 91: nop(9); break; 
case 92: nop(8); break; 
case 93: nop(7); break; 
case 94: nop(6); break; 
case 95: nop(5); break; 
case 96: nop(4); break; 
case 97: nop(3); break; 
case 98: nop(2); break; 
case 99: nop(1); break; 
case 100: nop(0); break; 
}
ready
switch unordered
var val = next(); 

switch(val) { 
case 96: nop(4); break; 
case 25: nop(75); break; 
case 60: nop(40); break; 
case 27: nop(73); break; 
case 54: nop(46); break; 
case 62: nop(38); break; 
case 48: nop(52); break; 
case 30: nop(70); break; 
case 85: nop(15); break; 
case 94: nop(6); break; 
case 63: nop(37); break; 
case 47: nop(53); break; 
case 88: nop(12); break; 
case 5: nop(95); break; 
case 11: nop(89); break; 
case 9: nop(91); break; 
case 53: nop(47); break; 
case 33: nop(67); break; 
case 12: nop(88); break; 
case 22: nop(78); break; 
case 34: nop(66); break; 
case 3: nop(97); break; 
case 26: nop(74); break; 
case 67: nop(33); break; 
case 57: nop(43); break; 
case 51: nop(49); break; 
case 38: nop(62); break; 
case 93: nop(7); break; 
case 68: nop(32); break; 
case 44: nop(56); break; 
case 75: nop(25); break; 
case 59: nop(41); break; 
case 70: nop(30); break; 
case 87: nop(13); break; 
case 50: nop(50); break; 
case 56: nop(44); break; 
case 29: nop(71); break; 
case 20: nop(80); break; 
case 19: nop(81); break; 
case 10: nop(90); break; 
case 86: nop(14); break; 
case 99: nop(1); break; 
case 71: nop(29); break; 
case 76: nop(24); break; 
case 98: nop(2); break; 
case 18: nop(82); break; 
case 90: nop(10); break; 
case 81: nop(19); break; 
case 97: nop(3); break; 
case 77: nop(23); break; 
case 92: nop(8); break; 
case 43: nop(57); break; 
case 15: nop(85); break; 
case 45: nop(55); break; 
case 37: nop(63); break; 
case 91: nop(9); break; 
case 24: nop(76); break; 
case 4: nop(96); break; 
case 61: nop(39); break; 
case 17: nop(83); break; 
case 72: nop(28); break; 
case 7: nop(93); break; 
case 21: nop(79); break; 
case 100: nop(0); break; 
case 49: nop(51); break; 
case 28: nop(72); break; 
case 16: nop(84); break; 
case 73: nop(27); break; 
case 14: nop(86); break; 
case 36: nop(64); break; 
case 8: nop(92); break; 
case 78: nop(22); break; 
case 84: nop(16); break; 
case 58: nop(42); break; 
case 32: nop(68); break; 
case 65: nop(35); break; 
case 13: nop(87); break; 
case 6: nop(94); break; 
case 74: nop(26); break; 
case 46: nop(54); break; 
case 35: nop(65); break; 
case 64: nop(36); break; 
case 79: nop(21); break; 
case 23: nop(77); break; 
case 89: nop(11); break; 
case 55: nop(45); break; 
case 41: nop(59); break; 
case 82: nop(18); break; 
case 69: nop(31); break; 
case 40: nop(60); break; 
case 66: nop(34); break; 
case 42: nop(58); break; 
case 2: nop(98); break; 
case 52: nop(48); break; 
case 83: nop(17); break; 
case 31: nop(69); break; 
case 39: nop(61); break; 
case 80: nop(20); break; 
case 95: nop(5); break; 
case 1: nop(99); break; 
}
ready

Revisions

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