Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
set includes vs array includes vs or, for two values
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:132.0) Gecko/20100101 Firefox/132.0
Browser:
Firefox 132
Operating system:
Windows
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
Array 1
476.4 Ops/sec
Array 2
418.3 Ops/sec
Array 3
378.0 Ops/sec
if 1
11274.5 Ops/sec
if 2
5537.6 Ops/sec
if 3
6369.8 Ops/sec
Set 1
11082.4 Ops/sec
Set 2
8488.5 Ops/sec
Set 3
11531.3 Ops/sec
Script Preparation code:
const valueArray = [1, 2]; const valueSet = new Set([1, 2]); const a = 1; const b = 2; const c = 3;
Tests:
Array 1
function array1() { valueArray.includes(1); } for (var i = 0; i < 1e5; ++i) { array1(); }
Array 2
function array2() { valueArray.includes(2); } for (var i = 0; i < 1e5; ++i) { array2(); }
Array 3
function array3() { valueArray.includes(3); } for (var i = 0; i < 1e5; ++i) { array3(); }
if 1
function if1() { if (a === a || a === b) {} } for (var i = 0; i < 1e5; ++i) { if1(); }
if 2
function if2() { if (b === a || b === b) {} } for (var i = 0; i < 1e5; ++i) { if2(); }
if 3
function if3() { if (c === a || c === b) {} } for (var i = 0; i < 1e5; ++i) { if3(); }
Set 1
function set1() { valueSet.has(1); } for (var i = 0; i < 1e5; ++i) { set1(); }
Set 2
function set2() { valueSet.has(2); } for (var i = 0; i < 1e5; ++i) { set2(); }
Set 3
function set3() { valueSet.has(1); } for (var i = 0; i < 1e5; ++i) { set3(); }
Inline Set 1
function inlineSet1() { new Set([1, 2]).has(1); } for (var i = 0; i < 1e5; ++i) { inlineSet1(); }
Inline set 2
function inlineSet2() { new Set([1, 2]).has(2); } for (var i = 0; i < 1e5; ++i) { inlineSet2(); }
Inline set 3
function inlineSet3() { new Set([1, 2]).has(3); } for (var i = 0; i < 1e5; ++i) { inlineSet3(); }
Inline const set 1
function inlineConstSet1() { const inlineValueConstSet1 = new Set([1, 2]); inlineValueConstSet1.has(1); } for (var i = 0; i < 1e5; ++i) { inlineConstSet1(); }
Inline const set 2
function inlineConstSet2() { const inlineValueConstSet2 = new Set([1, 2]); inlineValueConstSet2.has(2); } for (var i = 0; i < 1e5; ++i) { inlineConstSet2(); }
Inline const set 3
function inlineConstSet3() { const inlineValueConstSet3 = new Set([1, 2]); inlineValueConstSet3.has(3); } for (var i = 0; i < 1e5; ++i) { inlineConstSet3(); }