JavaScript | Proxy() Object
The proxy object in JavaScript is used to define the custom behavior of fundamental operations (e.g. property lookup, assignment, enumeration, function invocation, etc).
Syntax:
var p = new Proxy(target, handler);
Parameter: The proxy object accept two parameters as mentioned above and described below:
- target: A target object (can be any sort of object including a function, class, or even another proxy) to wrap with Proxy.
- handler: An object whose properties are functions which define the behavior of the proxy when an operation is performed on it.
Example:
< script > const Person = { Name: 'John Nash', Age: 25 }; const handler = { // target represents the Person while prop represents // proxy property. get: function(target, prop) { if (prop === 'FirstName') { return target.Name.split(' ')[0]; } if (prop === 'LastName') { return target.Name.split(' ').pop(); } else { return Reflect.get(target,prop); } } }; const proxy1 = new Proxy(Person, handler); document.write(proxy1 + "< br >"); // Though there is no Property as FirstName and LastName, // still we get them as if they were property not function. document.write(proxy1.FirstName + "< br >"); document.write(proxy1.LastName + "< br >"); </ script > |
chevron_right
filter_none
Output:
[object Object] John Nash
Note: The above code can be run directly in terminal provided NodeJs is installed, else run it in a HTML file by pasting the above in script tag and check the output in console of any web browser.