How do I test for an empty JavaScript object?

44    Asked by JohnDurso in Java , Asked on Aug 27, 2025

How do you test whether a JavaScript object is empty? What methods or built-in functions can you use to check if an object has no properties?

Answered by Kondo Nakamura

In JavaScript, objects are widely used to store key-value pairs, but sometimes you need to check if an object is empty—that is, if it has no properties. This leads to the question: “How do I test for an empty JavaScript object?” Thankfully, there are several simple approaches.

Method 1: Using Object.keys()

 The most common way is to check the length of the keys array:

 let obj = {};
console.log(Object.keys(obj).length === 0); // true

 If there are no keys, the object is empty.

Method 2: Using Object.entries() or Object.values()

 Both return arrays, so you can also check their length:

   console.log(Object.entries(obj).length === 0); // true

Method 3: Using JSON.stringify()

 Convert the object to a string and compare with {}:

   console.log(JSON.stringify(obj) === "{}"); // true

 Not the most efficient, but useful for quick checks.

Method 4: Custom Utility Function

 For reusability, you can write:

 function isEmpty(obj) {
  return Object.keys(obj).length === 0;
}

Important Note:

 These methods only check for own properties, not inherited ones. If you need a strict check, use:

   Object.getOwnPropertyNames(obj).length === 0;

 Key Takeaway:

 The most reliable and efficient way to test for an empty object in JavaScript is to check if Object.keys(obj).length === 0. This ensures you’re only testing the object’s own enumerable properties.



Your Answer

Interviews

Parent Categories