# How to test for an empty object in JavaScript

> Learn how to check if an object is empty in JavaScript using Object.keys() and a constructor check to avoid false positives, with simple examples.

Author: [Flavio Copes](https://flaviocopes.com/about/) | Published: 2020-08-23 | Topics: [JavaScript](https://flaviocopes.com/tags/js/) | Canonical: https://flaviocopes.com/javascript-check-empty-object/

Today I had the need to check if an object was empty.

Since in [JavaScript](https://flaviocopes.com/javascript/) objects are compared by reference, we can't do a simple comparison like this:

```js
const obj = {}

if (obj === {}) {
  //no
}
```

The solution is to pass the object to the built-in method `Object.keys()` and to check if the object constructor is `Object`:

```js
const obj = {}

Object.keys(obj).length === 0 && obj.constructor === Object
```

It's important to add the second check, to avoid false positives.
