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 (Windows NT 10.0; Win64; x64; rv:126.0) Gecko/20100101 Firefox/126.0
Browser:
Firefox 126
Operating system:
Windows
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Switch
169494.3 Ops/sec
Object Literal
170604.9 Ops/sec
If Else
151978.2 Ops/sec
Object Literal defined outside function
144061.4 Ops/sec
Map
133859.3 Ops/sec
Map - defined outsid function
135079.3 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))