Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
unique set or object
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:125.0) Gecko/20100101 Firefox/125.0
Browser:
Firefox 125
Operating system:
Mac OS X 10.15
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
Set
7395.5 Ops/sec
Object
21481.3 Ops/sec
Script Preparation code:
var a = new Array(10000).fill(0).map(() => Math.floor(Math.random() * 10000)); var b = new Array(10000).fill(0).map(() => Math.floor(Math.random() * 10000).toString(32));
Tests:
Set number
var u = [...new Set(a).keys()]
Object number
var u = Object.values(a.reduce( (res, k) => { res[k] ??= k; return res; },{} ));
object filter number
const f = new Set(); return a.filter((v) => (f.has(v) ? false : f.add(v)));
Set string
var u = [...new Set(b).keys()]
Object string
var u = Object.values(b.reduce( (res, k) => { res[k] ??= k; return res; },{} ));
object filter string
const f = new Set(); return b.filter((v) => (f.has(v) ? false : f.add(v)));