Open In App

JavaScript Proxy() Constructor

JavaScript proxy() constructor is used to return the proxy constructor function for the object(e.g. property lookup, assignment, enumeration, function invocation, etc). 

Syntax:



let p = new Proxy(target, handler);

Parameter: The proxy object accept two parameters as mentioned above and described below:

Example: 






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);
 
console.log(proxy1);
 
// Though there is no Property as FirstName and LastName,
// still we get them as if they were property not function.
console.log(proxy1.FirstName);
console.log(proxy1.LastName);

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.

Article Tags :