Skip to content
Related Articles

Related Articles

Improve Article

JavaScript | handler.construct() Method

  • Last Updated : 27 Mar, 2020

The handler.construct() method in JavaScript is a trap for the new operation and this method returns an object.

Syntax:

const p = new Proxy(target, {
  construct: function(target, argumentsList, newTarget) {
  }
});  

Parameters: This method accept three parameters as mentioned above and described below:

  • Target: This parameter holds the target object.
  • argumentsList: This parameter holds the list of the constructor.
  • newTarget: This parameter holds the constructor that was originally called, p above.

Return value: This method returns an object.

Below examples illustrate the handler.construct() method in JavaScript:



Example 1:




<script>
function monster1(disposition) {
  this.disposition = disposition;
}
  
const handler1 = {
  construct(target, args) {
    console.log('Users at Geeksforgeeks are called');
  
    return new target(...args);
  }
};
  
const proxy1 = new Proxy(monster1, handler1);
console.log(new proxy1('Geeks').disposition);
  
var pro = new Proxy(function()  
                    {}, {  
  construct: function(objTarget, args, oldConstructor) {  
     return { Value : args[0] + " to anybody" }   
  }  
})  
    
console.log(JSON.stringify(new pro("Hello "), null, ' '))  
</script>

Output:

"Users at Geeksforgeeks are called"
"Geeks"
"{
 "Value": "Hello  to anybody"
}"

Example 2:




<script>
const p = new Proxy(function() {}, {
  construct: function(target, argumentsList, newTarget) {
    console.log('Value: ' + argumentsList.join(', '));
    return { value: argumentsList[0] * 10 /3};
  }
});
  
console.log('New Value: ' +new p(4).value);
</script>

Output:

"Value: 4"
"New Value: 13.333333333333334"

Supported Browsers: The browsers supported by handler.construct() method are listed below:

  • Google Chrome
  • Firefox
  • Opera
  • Safari
  • Edge



My Personal Notes arrow_drop_up
Recommended Articles
Page :