Facebook PixelHow to Check if Keys Exist in JavaScript Objects | Blog | CodeWithHarry
How to Check if Keys Exist in JavaScript Objects

How to Check if Keys Exist in JavaScript Objects

"Learn how to check if keys exist in JavaScript objects using two popular methods: the 'in' operator and the hasOwnProperty() method. This comprehensive guide provides syntax, examples, and insights to help you navigate object properties in JavaScript"

By CodeWithHarry

Updated: 5 April 2025

Below are two popular methods of checking if a given key exists in a JavaScript object, along with code examples to provide a deeper understanding.

Method 1: Using the 'in' Operator

The 'in' operator returns a boolean value, true if the specified property is in the object or its prototype chain, and false if not.

Syntax:

if (key in object) {
    // code
}

Example:

const car = { make: 'Toyota', model: 'Camry' };
 
if ('make' in car) {
  console.log('Property exists!');
} else {
  console.log('Property does not exist.');
}
// Output: Property exists!

Note that the 'in' operator will return true if the property exists in the object's prototype chain as well, not just in the object itself.

Method 2: Using the hasOwnProperty() Method

In my opinion, this is a better way. The hasOwnProperty() method returns a boolean value indicating whether the object has the specified property as its own property. Unlike the 'in' operator, it doesn't check the prototype chain which is a good thing.

Syntax:

object.hasOwnProperty(propertyName)

Example:

const person = { name: 'John', age: 30 };
 
if (person.hasOwnProperty('age')) {
  console.log('Property exists!');
} else {
  console.log('Property does not exist.');
}
// Output: Property exists!

This method is often preferred when you need to ensure that the property is not inherited from the prototype chain.

Conclusion

Both the 'in' operator and hasOwnProperty() method are valuable tools in a JavaScript developer's toolkit. Depending on your specific use case and whether or not you want to check the prototype chain, you can choose the method that best fits your needs.

  • Use the 'in' operator when you want to check for the existence of a property either in the object itself or its prototype chain.
  • Use the hasOwnProperty() method when you want to ensure that the property is an own property of the object and not inherited.

Hope that was useful for the fellow JavaScript developers out there. Let me know if you have any questions. Happy Coding!

Tags

howtocheckifkeysexistinjavascriptobjects