Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
HashMapLoop
(version: 0)
Comparing performance of:
Object.values vs for in vs Object.entries vs Object.keys vs extractAndFilter vs reduce
Created:
5 years ago
by:
Guest
Jump to the latest result
Script Preparation code:
var a = { 1: { id: 1 }, 2: { id: 2 }, 3: { id: 3 } }; function extractValues(obj) { const t = []; for (var key in obj) { t.push(obj[key]); } return t; } function extractAndFilter(obj) { const t = []; for (var key in obj) { if (obj[key].id > 1) { t.push(obj[key].name); } } return t; }
Tests:
Object.values
Object.values(a).filter(model => model.id > 1).map(model => model.id)
for in
extractValues(a).filter(model => model.id > 1).map(model => model.id)
Object.entries
Object.entries(a).filter(([, model]) => model.id > 1).map(([key]) => key);
Object.keys
Object.keys(a).filter(id => a[id].id > 1).map(id => a[id].id);
extractAndFilter
extractAndFilter(a);
reduce
Object.values(a).reduce((a, b) => { if(b.id > 1) { a.push(b.name); } return a; }, [])
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (6)
Previous results
Fork
Test case name
Result
Object.values
for in
Object.entries
Object.keys
extractAndFilter
reduce
Fastest:
N/A
Slowest:
N/A
Latest run results:
No previous run results
This benchmark does not have any results yet. Be the first one
to run it!
Related benchmarks:
testtest54654
abcddddddd
Map convert
Object.entries VS Object.keys with obj[key]
Comments
Confirm delete:
Do you really want to delete benchmark?