Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
Run results for:
array.includes vs array.indexOf vs set.has vs weakSet.has
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/136.0.0.0 Safari/537.36
Browser:
Chrome 136
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Benchmark engine:
Benchmark.js
set.has
176.2M/s
weakSet.has
103.6M/s
array.indexOf
55.7M/s
array.includes
53.5M/s
View exact numbers
Test name
Executions per second
✓
set.has
176,198,608 Ops/sec
weakSet.has
103,558,368 Ops/sec
array.indexOf
55,720,668 Ops/sec
array.includes
53,529,256 Ops/sec
Script Preparation code:
var array = [] var set = new Set() var weakSet = new WeakSet() var target = {} let i = 100 while (i--) { array.push({}) set.add({}) weakSet.add({}) } array.push(target) set.add(target) weakSet.add(target)
Tests:
array.includes
array.includes(target)
array.indexOf
array.indexOf(target)
set.has
set.has(target)
weakSet.has
weakSet.has(target)