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
120K/s
Find from array using function reference
42K/s
View exact numbers
Test name
Executions per second
✓
Find by object keys
119,684 Ops/sec
Find from array using function reference
41,591 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])