GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • JS Tutorial
  • Web Tutorial
  • A to Z Guide
  • Projects
  • OOP
  • DOM
  • Set
  • Map
  • Math
  • Number
  • Boolean
  • Exercise
  • Introduction3 min read
  • Variables5 min read

This view

  • Original page
  • New address

GeezerVison is showing www.geeksforgeeks.org — JavaScript Reflect construct() Method - GeeksforGeeks

geeksforgeeks
search icon
  • Courses
  • Tutorials
  • Interview Prep
  • JS Tutorial
  • Web Tutorial
  • A to Z Guide
  • Projects
  • OOP
  • DOM
  • Set
  • Map
  • Math
  • Number
  • Boolean
  • Exercise

JavaScript Reflect construct() Method

Last Updated : 12 Jul, 2025

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.

Comment

Explore

    JavaScript Basics
    • Introduction3 min read
    • Variables5 min read
    • Operators4 min read
    • Control Statements4 min read
    Array & String
    • Arrays6 min read
    • Array Methods4 min read
    • String5 min read
    • String Methods8 min read
    Function & Object
    • Functions4 min read
    • Function Expression3 min read
    • Function Overloading4 min read
    • Objects4 min read
    • Constructors4 min read
    OOP
    • OOP5 min read
    • Classes & Objects4 min read
    • Access Modifiers5 min read
    • Constructor4 min read
    Asynchronous JavaScript
    • Asynchronous2 min read
    • Callbacks4 min read
    • Promises4 min read
    • Event Loop3 min read
    • Async Await Fuction3 min read
    Exception Handling
    • Error and Exceptional Handling5 min read
    • Errors Throw & Try to Catch2 min read
    • Custom Errors2 min read
    • TypeError Invalid Array.prototype.sort argument1 min read
    DOM
    • DOM8 min read
    • DOM Elements3 min read
    • Custom Events4 min read
    • Addeventlistener5 min read
    Advanced Topics
    • Closure3 min read
    • Hoisting5 min read
    • Scope4 min read
    • Higher Order Functions7 min read
    • Debugging3 min read
    Courses
    • Placement 360 Course2 min read
    • MERN Full Stack Course2 min read
    • DSA and System Design Course2 min read
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.