The Reflect
object in JavaScript provides methods for interceptable JavaScript operations and direct manipulation of objects.
JavaScript Reflect object provides the following static methods.
- Reflect.apply(target, thisArgument, argumentsList)
- Reflect.construct(target, argumentsList[, newTarget])
- Reflect.defineProperty(target, propertyKey, attributes)
- Reflect.deleteProperty(target, propertyKey)
- Reflect.get(target, propertyKey[, receiver])
- Reflect.getOwnPropertyDescriptor(target, propertyKey)
- Reflect.getPrototypeOf(target)
- Reflect.has(target, propertyKey)
- Reflect.isExtensible(target)
- Reflect.ownKeys(target)
- Reflect.preventExtensions(target)
- Reflect.set(target, propertyKey, value[, receiver])
- Reflect.setPrototypeOf(target, prototype)
Example: Here, Reflect.set()
and Reflect.get()
are used to set and get a property on an object, providing a consistent and interceptable way of working with object properties.
Javascript
const obj = {}; // Using Reflect to set a property Reflect.set(obj, 'prop' , 42);
// Using Reflect to get a property const value = Reflect.get(obj, 'prop' );
console.log(value); // Output: 42
|
Output
42