JavaScript New Keyword

Description

When you put the keyword new in front of a function call, the function is treated as a constructor. An [JavaScript Objects](JavaScript Objects) with the proper [JavaScript Prototypes](JavaScript Prototypes) is automatically created, bound to this in the function and returned at the end of the function. This allows you to do OO type stuff.

Syntax

function Rabbit(type) {
  this.type = type
}
Rabbit.prototype.speak = function(line) {
  console.log(`The ${this.type} rabbit says '${line}'`)
};
 
let weirdRabbit = new Rabbit("weird")
 
weirdRabbit.speak("I want carrots!")