Open In App

JavaScript Reflect construct() Method

JavaScript Reflect.construct() method in JavaScript is used to call a new target. It gives also the added option to specify a different prototype.

Syntax:



Reflect.construct(target, argumentsList, newTarget)

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

Return Value: This method returns a new instance of the target.



Exceptions: A TypeError is an exception given as the result when the target is not a constructor.

The below examples illustrate the Reflect.construct() method in JavaScript:

Example 1: This example shows the basic use of the Reflect.construct() method in JavaScript.




function func1(a, b, c) {
    this.sum = a + b + c;
}
 
const args = [1, 2, 3];
const object1 = new func1(...args);
const object2 = Reflect.construct(func1, args);
 
console.log(object2.sum);
 
console.log(object1.sum);
 
function func2(a, b, c) {
    this.sum = a + b + c;
}
const args2 = [1, 4, 3];
const args3 = [1, 2, 3];
const object3 = new func1(...args);
const object4 = Reflect.construct(func2, args2);
console.log(object4.sum);
console.log(object3.sum);

Output
6
6
8
6

Example 2: This example shows the basic use of the Reflect.construct() method in JavaScript.




function OneClass() {
    this.name = 'one'
}
 
function OtherClass() {
    this.name = 'other'
}
const args = [1, 2, 3];
 
let obj1 = Reflect.construct(OneClass, args, OtherClass)
 
let obj2 = Object.create(OtherClass.prototype)
OneClass.apply(obj2, args)
 
console.log(obj1.name)
console.log(obj2.name)
 
console.log(obj1 instanceof OneClass)
console.log(obj2 instanceof OneClass)
 
console.log(obj1 instanceof OtherClass)
console.log(obj2 instanceof OtherClass)

Output
one
one
false
false
true
true

Supported Browsers:

The browsers are supported by JavaScript Reflect.apply() Methods are listed below:

We have a complete list of Javascript Reflects methods, to check those go through the JavaScript Reflect Reference article.


Article Tags :