Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Map vs Object (real-world) vs PureObject Performance
(version: 1)
Lookup of map vs object (in a real-world test format)
Comparing performance of:
Conspicuous Map lookup vs Conspicuous Obj lookup vs Conspicuous PureObj lookup
Created:
one year ago
by:
Guest
Jump to the latest result
Script Preparation code:
var keyCount = 16384 var keys = [] var map = new Map() var obj = {} var pureObj = Object.create(null) // Hide lookup keys to prevent V8 cheating (AKA Optimizing) var getConspicuousKey = seed => keys[Math.floor(seed * keyCount)] // Setup out test objects w/ random values for (let i=0; i<keyCount; i++) { let val = Math.random() let key = Math.random() keys.push(key) map.set(key,val) obj[key] = val pureObj[key] = val }
Tests:
Conspicuous Map lookup
for (let i=0; i<keyCount; i++) { let seed = Math.random() let key = getConspicuousKey(seed) a = map.get(key) }
Conspicuous Obj lookup
for (let i=0; i<keyCount; i++) { let seed = Math.random() let key = getConspicuousKey(seed) a = obj[key] }
Conspicuous PureObj lookup
for (let i=0; i<keyCount; i++) { let seed = Math.random() let key = getConspicuousKey(seed) a = pureObj[key] }
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (3)
Previous results
Fork
Test case name
Result
Conspicuous Map lookup
Conspicuous Obj lookup
Conspicuous PureObj lookup
Fastest:
N/A
Slowest:
N/A
Latest run results:
Run details:
(Test run date:
2 months ago
)
User agent:
Mozilla/5.0 (Android 14; Mobile; rv:147.0) Gecko/147.0 Firefox/147.0
Browser/OS:
Firefox Mobile 147 on Android
View result in a separate tab
Embed
Embed Benchmark Result
Test name
Executions per second
Conspicuous Map lookup
1086.1 Ops/sec
Conspicuous Obj lookup
96.1 Ops/sec
Conspicuous PureObj lookup
93.9 Ops/sec
Related benchmarks:
Map vs Object (real-world) Performance
Map vs Object (real-world) Performance 2
Map vs Object (real-world) Performance (lookup and set)
Map vs Object (real-world) Performance (disabling object-specific optimizations and default keys)
Map vs Object (real-world) Performance (better)
Map vs Object (real-world) Performance - Forked
Map vs Object (real-world) Performance - Forked2
Map vs Object (real-world) Performance (better) 2
Map vs Object (real-world) Performance (non-numeric key)
Comments
Confirm delete:
Do you really want to delete benchmark?