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:

filter_none

edit
close

play_arrow

link
brightness_4
code

                        <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


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.



My Personal Notes arrow_drop_up

Recommended Posts:



    Article Tags :

    Be the First to upvote.


    Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.