switch vs hash

Benchmark created on


Setup

var switchFn = function(a){
	switch(a){
		case 'aga':
		  return 'aga';
		case 'ugu':
		  return 'ugu';
		case 5:
		  return 'ggg';
		case 'oro':
		  return 'oro';
		case 'moro':
		  return 'moro';
  		case 'fa':
		  return 'gggq3fg';
  		case 'shsh':
		  return 'shsh';
	}
};
var lookup = {
	'aga': 'aga',
	'ugu': 'ugu',
	5: 'ggg',
	oro: 'oro',
	moro: 'moro',
	'fa': '23ttou9j',
	'shsh': 'shsh'	
};
var lookupFn = function(a){
	return lookup[a];
}

Test runner

Ready to run.

Testing in
TestOps/sec
switch
var str = '';
for(var i = 0; i < 5000; i++)
  str += switchFn('fa');
ready
hash
var str = '';
for(var i = 0; i < 5000; i++)
  str += lookup['fa'];
ready
hash in function
var str = '';
for(var i = 0; i < 5000; i++)
  str += lookupFn('fa');
ready

Revisions

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