Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
Run results for:
Sparse Array Vs. Object,Map,Set, Number Indexes
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (iPhone; CPU iPhone OS 18_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.6 Mobile/15E148 Safari/604.1
Browser:
Mobile Safari 18
Operating system:
iOS 18.6
Device Platform:
Mobile
Date tested:
8 months ago
Benchmark engine:
Benchmark.js
TypedArray
63K/s
Set Length Array
59K/s
Object
42K/s
Array
40K/s
map
6K/s
set
4K/s
View exact numbers
Test name
Executions per second
✓
TypedArray
62,504 Ops/sec
Set Length Array
58,641 Ops/sec
Object
42,294 Ops/sec
Array
39,974 Ops/sec
map
5,965 Ops/sec
set
3,885 Ops/sec
Script Preparation code:
var iterations =100000; var obj = {}; var arr = []; var map = new Map(); var set = new Set(); var setLengthArr = new Array(iterations); var typedArray = new Uint32Array(iterations);
Tests:
Object
for(let i=0;i<iterations;i+=10){ obj[i]=Math.floor(Math.random()*iterations); obj[i+1]=obj[i]+1; }
Array
for(let i=0;i<iterations;i+=10){ arr[i]=Math.floor(Math.random()*iterations); arr[i+1]= arr[i]+1; }
Set Length Array
for(let i=0;i<iterations;i+=10){ setLengthArr[i]=Math.floor(Math.random()*iterations); setLengthArr[i+1] = setLengthArr[i]+1; }
TypedArray
for(let i=0;i<iterations;i+=10){ typedArray[i]=Math.floor(Math.random()*iterations); typedArray[i+1]= typedArray[i]+1; }
map
for(let i=0;i<iterations;i+=10){ map.set(i,Math.floor(Math.random()*iterations)); map.set(i+1,map.get(i)+1) }
set
for(let i=0;i<iterations;i+=10){ set.add(Math.floor(Math.random()*iterations)); set.add(set.has(i+1)) }