Using Object.keys()
169,635 ±1.83% 2% slower
function isEmptyObject(obj) {
return Object.keys(obj).length === 0;
}
Using for...in loop (WON)
172,973 ±0.97% fastest
function isEmptyObject(obj) {
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
return false;
}
}
return true;
}
Using JSON.stringify
164,737 ±0.83% 5% slower
function isEmptyObject(obj) {
return JSON.stringify(obj) === '{}';
}
Using Object.entries()
169,838 ±1.34% 2% slower
function isEmptyObject(obj) {
return Object.entries(obj).length === 0;
}
Test of benchmark: https://jsperf.app/govaru