JavaScript Handler construct() Method
JavaScript 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 accepts 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: In this example, we will set a trap for an operation and return a new object using the handler.construct() method in JavaScript.
javascript
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);
let pro = new Proxy( function () { }, {
construct: function (objTarget, args, oldConstructor) {
return { Value: args[0] + " to anybody" }
}
})
console.log(JSON.stringify( new pro( "Hello " ), null , ' ' ))
|
Output:
"Users at Geeksforgeeks are called"
"Geeks"
"{
"Value": "Hello to anybody"
}"
Example 2: In this example, we will set a trap for an operation and return a new object using the handler.construct() method in JavaScript.
javascript
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);
|
Output:
"Value: 4"
"New Value: 13.333333333333334"
Supported Browsers: The browsers supported by handler.construct() method are listed below:
- Google Chrome 49 and above
- Firefox 18 and above
- Opera 36 and above
- Safari 10 and above
- Edge 12 and above
We have a complete list of Javascript Proxy/handler methods, to check those go through the Javascript Proxy/handler Reference article.
Last Updated :
22 May, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...