Open In App

JavaScript Reflect construct() Method

Last Updated : 12 Jul, 2025
Suggest changes
Share
Like Article
Like
Report

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(para1, para2, para3)

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

  • para1: This parameter is the target function that is going to be called.
  • para2: This parameter is an array-like object specifying the argument with which the target should be called.
  • para3: It is an optional parameter. The constructor whose prototype should be used.

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.

javascript
function addNumbers(x, y, z) {  this.sum = x + y + z; } const values1 = [1, 2, 3]; const obj1 = new addNumbers(...values1); const obj2 = Reflect.construct(addNumbers, values1); console.log(obj2.sum); console.log(obj1.sum); function calculateSum(p, q, r) {  this.sum = p + q + r; } const values2 = [1, 4, 3]; const values3 = [1, 2, 3]; const obj3 = new addNumbers(...values3); const obj4 = Reflect.construct(calculateSum, values2); console.log(obj4.sum); console.log(obj3.sum); 

Output
6 6 8 6 

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

javascript
class FirstClass {  constructor(name) {  this.name = name;  } } class SecondClass {  constructor(name) {  this.name = name;  } } const values = ['one']; let objA = new FirstClass(...values); let objB = new SecondClass(...values); console.log(objA.name); console.log(objB.name); console.log(objA instanceof FirstClass); console.log(objB instanceof FirstClass); console.log(objA instanceof SecondClass); console.log(objB instanceof SecondClass); 

Output
one one true false false true 

Supported Browsers:

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

  • Google Chrome 49 and above
  • Edge 12 and above
  • Firefox 42 and above
  • Opera 36 and above
  • Safari 10 and above

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


Explore