casevsswitch (v4)

Revision 4 of this benchmark created on


Preparation HTML

<script>
  var aDictionary = []
  aDictionary['a'] = "The string is for case 'a'";
  aDictionary['b'] = "The string is for case 'b'";
  aDictionary['c'] = "The string is for case 'c'";
  aDictionary['d'] = "The string is for case 'd'";
  aDictionary['e'] = "The string is for case 'e'";
  aDictionary['f'] = "The string is for case 'f'";
  aDictionary['g'] = "The string is for case 'g'";
  aDictionary['h'] = "The string is for case 'h'";
  aDictionary['i'] = "The string is for case 'i'";
  aDictionary['j'] = "The string is for case 'j'";
  
  
  var objDictionary = {
    'a' : "The string is for case 'a'",
    'b' : "The string is for case 'b'",
    'c' : "The string is for case 'c'",
    'd' : "The string is for case 'd'",
    'e' : "The string is for case 'e'",
    'f' : "The string is for case 'f'",
    'g' : "The string is for case 'g'",
    'h' : "The string is for case 'h'",
    'i' : "The string is for case 'i'",
    'j' : "The string is for case 'j'"
  }
</script>

Test runner

Ready to run.

Testing in
TestOps/sec
Lookup by object
strValue = objDictionary['j'];
 
ready
Lookup by switch
strKey = 'j';
switch( strKey ) {
  case 'a' : 
    strResult = "The string is for case 'a'";
    break;
    
  case 'b' : 
    strResult = "The string is for case 'b'";
    break;
    
  case 'c' : 
    strResult = "The string is for case 'c'";
    break;
    
  case 'd' : 
    strResult = "The string is for case 'd'";
    break;
    
  case 'e' : 
    strResult = "The string is for case 'e'";
    break;
    
  case 'f' : 
    strResult = "The string is for case 'f'";
    break;
    
  case 'g' : 
    strResult = "The string is for case 'g'";
    break;
    
  case 'h' : 
    strResult = "The string is for case 'h'";
    break;
    
  case 'i' : 
    strResult = "The string is for case 'i'";
    break;
    
  case 'j' : 
    strResult = "The string is for case 'j'";
    break;
}
ready
Lookup by array
strValue = aDictionary['j'];
ready

Revisions

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