Open In App
Related Articles

JavaScript Reflect has() Method

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Report issue
Report

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('geeks') }
});
console.log(Reflect.has(obj, 'geeksforgeeks'));
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.



Last Updated : 30 May, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads