Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Object vs Map base op
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/125.0.0.0 Safari/537.36
Browser:
Chrome 125
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Object
101476.1 Ops/sec
Map
65237.1 Ops/sec
Tests:
Object
const numElements = 100; // Generate random keys and values for benchmarking const generateData = (count) => { const data = []; for (let i = 0; i < count; i++) { data.push([`key${i}`, `value${i}`]); } return data; }; const testData = generateData(numElements); // Object Benchmark Functions const benchmarkObject = () => { const obj = {}; testData.forEach(([key, value]) => { obj[key] = value; }); testData.forEach(([key, _]) => { obj[key]; }); testData.forEach(([key, _]) => { const value = obj[key]; }); testData.forEach(([key, _]) => { obj.hasOwnProperty(key); !obj[key]; }); }; benchmarkObject();
Map
const numElements = 100; // Generate random keys and values for benchmarking const generateData = (count) => { const data = []; for (let i = 0; i < count; i++) { data.push([`key${i}`, `value${i}`]); } return data; }; const testData = generateData(numElements); const benchmarkMap = () => { const map = new Map(); testData.forEach(([key, value]) => { map.set(key, value); }); testData.forEach(([key, _]) => { map.get(key); }); testData.forEach(([key, _]) => { const value = map.get(key); }); testData.forEach(([key, _]) => { map.has(key); }); }; benchmarkMap()