ES6 - Reflect.construct()



This method acts as the new operator and is equivalent to calling new target(...args).

Syntax

The syntax given below is for the function construct(), where,

  • target is the target function to call.

  • argumentsList is an array-like object specifying the arguments with which target should be called.

  • newTarget is the constructor whose prototype should be used. This is an optional parameter. If no value is passed to this parameter, its value is targetparameter.

Reflect.construct(target, argumentsList[, newTarget])

Example

The following example creates a class Student with a property fullName. The constructor of the class takes firstName and lastName as parameters. An object of the class Student is created using reflection as shown below.

<script>
   class Student{
      constructor(firstName,lastName){
         this.firstName = firstName
         this.lastName = lastName
      }
      
	  get fullName(){
         return `${this.firstName} : ${this.lastName}`
      }
   }
   
   const args = ['Mohammad','Mohtashim']
   const s1 = Reflect.construct(Student,args)
   
   console.log(s1.fullName)

</script>

The output of the above code will be as follows −

Mohammad : Mohtashim
Advertisements