First look at the syntax of new

  • new constructor[([arguments])]

Where constructor can be a class or a function

When we call the new operator, follow these steps

  1. Create an empty object {}
  2. The __proto__ binding property for the newly created empty object, bound to constructive.prototype
  3. Specifies the newly created object asthisThe context in which the
  4. If the function does not return an object, this is returned