JavaScript Reflect has() Method

JavaScript Reflect.has() method in JavaScript is used to check whether the property exists in an object or not. It works like the in operator as a function.
Syntax:
Reflect.has(target, propertyKey)
Parameters: This method accepts two parameters as mentioned above and described below:
- target: This parameter is the target object and it looks for the property.
- propertyKey: This parameter is the name of the property to be checked.
Return value: This method returns a Boolean value which indicates if the target has the property.
Exceptions: A TypeError is an exception given as the result when the target is not an object.
The below examples illustrate the Reflect.has() method in JavaScript:
Example 1: In this example, we will check if the object has the property or not using the Reflect.has() method in JavaScript.
javascript
const object1 = { property1: 434 }; console.log(Reflect.has(object1, 'property1')); console.log(Reflect.has(object1, 'property2')); console.log(Reflect.has(object1, 'toString')); let x = { foo: 1 }; console.log(Reflect.has(x, 'foo')); console.log('foo' in x); console.log(Reflect.has(x, 'bar')); console.log('bar' in x); |
Output:
true false true true true false false
Example 2: In this example, we will check if the object has the property or not using the Reflect.has() method in JavaScript.
javascript
// Returns true for properties in // the prototype chain console.log(Reflect.has({ x: 0 }, 'toString')); // Proxy with .has() handler method let obj = new Proxy({}, { has(t, k) { return k.startsWith('zambiatek') } }); console.log(Reflect.has(obj, 'zambiatek')); console.log(Reflect.has(obj, 'geekforgeek')); const val1 = { foo: 123 } const val2 = { __proto__: val1 } const val3 = { __proto__: val2 } // The prototype chain is: c -> b -> a console.log(Reflect.has(val3, 'foo')); |
Output:
true true false true
Supported Browsers: The browsers supported by JavaScript Reflect.has() Method are listed below:
- Google Chrome 49 and above
- Edge 12 and above
- Firefox 42 and above
- Opera 36 and above
- Safari 10 and above
We have a complete list of Javascript Reflects methods, to check those go through the JavaScript Reflect Reference article.



