Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Map v Object v Set v Array ALL base actions
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1 Safari/605.1.15
Browser:
Safari 17
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
map delete
28478436.0 Ops/sec
set remove
27337056.0 Ops/sec
Script Preparation code:
var map = new Map(); var set = new Set(); var obj = {}; var weakMap = new WeakMap(); var weakSet = new WeakSet(); const arr = Array.from({ length: 1000 }).map(v => Math.random() * 10000); var arrString = arr.map(v => String(v) ); var arrObj = arr.map(v => Object.create(Object.prototype, { [v]: {value: v} })); var arrSymbol = arr.map(v => { return Symbol({ [v]: v }) }); var mapPop = new Map(arrObj.map(v => [v, v])) var setPop = new Set(arrObj); var emptyMap = new Map(); var emptySet = new Set(); console.log(mapPop)
Tests:
map delete
mapPop.forEach(va => mapPop.delete(va))
set remove
setPop.forEach(va => setPop.delete(va))
add map
arrString.forEach(a => emptyMap.set(a, a))
add set
arrString.forEach(a => emptySet.add(a))
has Map
arrString.forEach(v => emptyMap.has(v))
has set
arrString.forEach(v => emptySet.has(v))