Skip to content
Related Articles

Related Articles

JavaScript | Reflect.has() Method

Improve Article
Save Article
  • Last Updated : 30 Sep, 2021
Improve Article
Save Article

The Reflect.has() method in JavaScript is used to check whether the property exists in an object or not. It works like in operator as a function.
Syntax: 
 

Reflect.has(target, propertyKey) 

Parameters: This method accept 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 methods returns a Boolean value which indicates if the target has the property.
Exceptions: A TypeError is exception given as the result, when the target is not object.
Below examples illustrate the Reflect.has() method in JavaScript:
Example 1: 
 

javascript




<script>
const object1 = {
    property1: 434
};
 
console.log(Reflect.has(object1, 'property1'));
console.log(Reflect.has(object1, 'property2'));
console.log(Reflect.has(object1, 'toString'));
 
var 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);
</script>

Output: 
 

true
false
true
true
true
false
false

Example 2: 
 

javascript




<script>
 
// 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'));
</script>

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

 


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!