Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Looping frozen object vs non-frozen object
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/131.0.0.0 Safari/537.36
Browser:
Chrome 131
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
Loop frozen object
19024226.0 Ops/sec
Loop non-frozen object
19523964.0 Ops/sec
HTML Preparation code:
<!--your preparation HTML code goes here-->
Script Preparation code:
const birdSpecies = { forest: { species: [ { name: "Northern Cardinal", physicalCharacteristics: { color: "Red", size: "Medium", beakType: "Conical" }, diet: { primary: "Seeds", secondary: "Fruits" }, habitat: "Woodlands and forests" }, { name: "Woodpecker", physicalCharacteristics: { color: "Black, White, and Red", size: "Medium", beakType: "Chisel-shaped" }, diet: { primary: "Insects", secondary: "Tree sap" }, habitat: "Wooded areas" } ] }, desert: { species: [ { name: "Roadrunner", physicalCharacteristics: { color: "Brown and White", size: "Medium", beakType: "Long and Slim" }, diet: { primary: "Insects", secondary: "Small reptiles" }, habitat: "Desert and arid regions" }, { name: "Cactus Wren", physicalCharacteristics: { color: "Brown with streaks", size: "Small", beakType: "Curved" }, diet: { primary: "Insects", secondary: "Seeds" }, habitat: "Cacti and desert shrubs" } ] }, wetlands: { species: [ { name: "Great Blue Heron", physicalCharacteristics: { color: "Blue-gray", size: "Large", beakType: "Long and Sharp" }, diet: { primary: "Fish", secondary: "Amphibians" }, habitat: "Wetlands and marshes" }, { name: "American Coot", physicalCharacteristics: { color: "Dark gray with white bill", size: "Medium", beakType: "Flat and short" }, diet: { primary: "Aquatic plants", secondary: "Small invertebrates" }, habitat: "Lakes and wetlands" } ] } } const frozenObject = Object.freeze(birdSpecies) const nonFrozenObject = birdSpecies
Tests:
Loop frozen object
function doStuff(value) { // } for (const habitat in frozenObject) { const data = frozenObject[habitat]; for (const bird of data.species) { for (const key in bird.physicalCharacteristics) { const value = bird.physicalCharacteristics[key]; doStuff(value); } for (const key in bird.diet) { const value = bird.diet[key]; doStuff(value); } } }
Loop non-frozen object
function doStuff(value) { // } for (const habitat in nonFrozenObject) { const data = frozenObject[habitat]; for (const bird of data.species) { for (const key in bird.physicalCharacteristics) { const value = bird.physicalCharacteristics[key]; doStuff(value); } for (const key in bird.diet) { const value = bird.diet[key]; doStuff(value); } } }