Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Switch vs Object Literal vs If Else vs Map - testing with simpler data
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36
Browser:
Chrome 132
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
Switch
175426.9 Ops/sec
Object Literal
176318.1 Ops/sec
If Else
172135.7 Ops/sec
Object Literal defined outside function
170407.5 Ops/sec
Map
165295.8 Ops/sec
Map - defined outsid function
163932.4 Ops/sec
Script Preparation code:
var animal = ["dog", "cat", "cattle", "cheetah"][Math.floor(Math.random() * 4)]
Tests:
Switch
function test(animal) { switch(animal){ case 'cat': return 'Kitten' case 'cattle': return 'Calf' case 'cheetah': return 'Cub' case 'dog': return 'Pup' default: return "I don't know that" } } console.log(test(animal))
Object Literal
function test(animal) { var babyAnimal = { cat:'Kitten', cattle:'Calf', cheetah:'Cub', dog:'Pup' } return babyAnimal[animal] ?? "I don't know that" } console.log(test(animal))
If Else
function test(animal) { if(animal.toLowerCase()==='cat'){ return 'Kitten' } else if(animal.toLowerCase()=='cattle'){ return 'Calf' } else if(animal.toLowerCase()==='cheetah'){ return 'Cub'; } else if(animal.toLowerCase()==='dog'){ return 'Pup'; } return "I don't know that" } console.log(test(animal))
Object Literal defined outside function
var babyAnimal = { cat:'Kitten', cattle:'Calf', cheetah:'Cub', dog:'Pup' } function test(animal) { return babyAnimal[animal] ?? "I don't know that" } console.log(test(animal))
Map
function test(animal) { const map1 = new Map(); map1.set('cat', 'Kitten'); map1.set('cattle', 'Calf'); map1.set('cheetah', 'Cub'); map1.set('dog', 'Pup'); return map1.get(animal) || "I don't know that" } console.log(test(animal))
Map - defined outsid function
const map1 = new Map(); map1.set('cat', 'Kitten'); map1.set('cattle', 'Calf'); map1.set('cheetah', 'Cub'); map1.set('dog', 'Pup'); function test(animal) { return map1.get(animal) || "I don't know that" } console.log(test(animal))