Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
My: Object.entries vs For In
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
Browser:
Chrome 126
Operating system:
Linux
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
N: 1000 Object.entries
2310.4 Ops/sec
N: 10000 Object.entries
187.5 Ops/sec
N: 1000 For In
2796.6 Ops/sec
N: 10000 For In
242.2 Ops/sec
N: 100000 Object.entries
12.9 Ops/sec
N: 100000 For In
20.9 Ops/sec
Script Preparation code:
var ns = [1000, 10000, 100000]; var results = Array(ns.length); // 1.000 -> 10.000 -> 100.000 -> 1.000.000 -> 10.000.000 ns.forEach((n, i) => { results[i] = [...Array(n).keys()].reduce((acc, c) => { acc['k_' + String(c).padStart(10, '0')] = Math.random(); return acc; }, {}); }); let sum = 0;
Tests:
N: 1000 Object.entries
sum = 0; Object.entries(results[0]).forEach(([k, v]) => sum += results[0][k]);
N: 10000 Object.entries
sum = 0; Object.entries(results[1]).forEach(([k, v]) => sum += results[1][k]);
N: 1000 For In
sum = 0; for (const k in results[0]) { sum += results[0][k] }
N: 10000 For In
sum = 0; for (const k in results[1]) { sum += results[1][k] }
N: 100000 Object.entries
sum = 0; Object.entries(results[2]).forEach(([k, v]) => sum += results[2][k]);
N: 100000 For In
sum = 0; for (const k in results[2]) { sum += results[2][k] }