Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
Run results for:
Object key vs Array Filter
Access an stored element through object property key vs array filtering. Util for handlers references, when you need to store handlers and have acces for them later.
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36
Browser:
Chrome 121
Operating system:
Windows
Device Platform:
Desktop
Date tested:
2 years ago
Benchmark engine:
Benchmark.js
Find by object keys
130K/s
Find from array using function reference
39K/s
View exact numbers
Test name
Executions per second
✓
Find by object keys
130,066 Ops/sec
Find from array using function reference
38,530 Ops/sec
Script Preparation code:
var arrayHandlers = []; var objectHandlers = {}; var handlersCount = 100; var functionHandlersToFind = []; var hashesToFind = []; var generateHash = function(ix) { return 'hdl' + ix; } var createHandler = function() { return function(data) { return "#Count:" + data; } }; for (let i = 0; i < handlersCount; i++) { let theNewHandler = createHandler(); arrayHandlers.push(theNewHandler); functionHandlersToFind.push(theNewHandler); let generatedHash = generateHash(i); objectHandlers[generatedHash] = theNewHandler; hashesToFind.push(generatedHash); }
Tests:
Find from array using function reference
functionHandlersToFind.forEach((fnHandler) => arrayHandlers.find(handler => handler === fnHandler))
Find by object keys
hashesToFind.forEach((hash, ix) => objectHandlers[hash])