Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
Run results for:
Object.create(null) vs Object literal - Creation and Iteration Performance (including Object.keys vs hasOwnPropertyCheck)
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36
Browser:
Chrome 122
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Benchmark engine:
Benchmark.js
Object literal (hasOwnProperty check iteration)
61.0M/s
Object literal (keys() iteration)
9.7M/s
Object.create
2.9M/s
View exact numbers
Test name
Executions per second
✓
Object literal (hasOwnProperty check iteration)
61,023,332 Ops/sec
Object literal (keys() iteration)
9,743,506 Ops/sec
Object.create
2,891,855 Ops/sec
Tests:
Object.create
const object = Object.create(null); object.a = 1; object.b = 2; object.c = 3; object.d = 4; object.e = 5; object.f = 6; object.g = 7; object.h = 8; let sum = 0, key; for (key in object) { sum += object[key]; }
Object literal (hasOwnProperty check iteration)
const object = {a: 1, b: 2, c: 3, d: 4, e: 5, f: 6, f: 7, h: 8}; let sum = 0, key; for (key in object) { if (object.hasOwnProperty(key)) { sum += object[key]; } }
Object literal (keys() iteration)
const object = {a: 1, b: 2, c: 3, d: 4, e: 5, f: 6, f: 7, h: 8}; const keys = Object.keys(object); let sum = 0; for (let i = 0, key; i < keys.length; i++) { sum += object[keys[i]]; }