How to Check if an Object Property is undefined in JavaScript

Updated onbyAlan Morel
How to Check if an Object Property is undefined in JavaScript

In JavaScript, you will often have to check if a property is defined on an object. This is important because if you try to access a property that is not defined, you will get an error.

In this post, we will explore the proper way to check if a property is defined on an object.

Check if a property is defined on an object

The best way to check if a property is defined on an object is to use the typeof operator.

This operator will return the type of the property as a string. If the property is not defined, it will return undefined.

From here, we can simply do a string comparison to see if the property is defined.

First, let's see how the typeof operator works by looking at examples.

JAVASCRIPT
const number = 1; const string = "string"; const boolean = true; const object = {}; const array = []; const function_ = function() {}; const list = [1, 2, 3]; typeof number; // 'number' typeof string; // 'string' typeof boolean; // 'boolean' typeof object; // 'object' typeof array; // 'object' typeof function_; // 'function' typeof list; // 'object' typeof fake; // 'undefined'

Now to check if a property is undefined just use the typeof operator and compare it to undefined.

This also works with objects. Consider this example:

JAVASCRIPT
const object = { name: "John", age: 30 }; typeof object.name; // 'string' typeof object.age; // 'number' typeof object.fake; // 'undefined'

Here's how you can check if any property is undefined:

JAVASCRIPT
if (typeof object.property === "undefined") { // do something }

Conclusion

In this post, we've explored the proper way to check if a property is defined on an object. We also covered the typeof operator.

Remember, the typeof operator will return the type of the property as a string. If the property is not defined, it will return undefined.

Hopefully, you've found this information helpful.

Happy coding!

To learn more about web development, founding a start-up, and bootstrapping a SaaS, follow me on X!
Copyright © 2017 - 2024 Sabe.io. All rights reserved. Made with ❤ in NY.