Declaring a constructor function

suggest change

Constructor functions are functions designed to construct a new object. Within a constructor function, the keyword this refers to a newly created object which values can be assigned to. Constructor functions “return” this new object automatically.

function Cat(name) {
  this.name = name;
  this.sound = "Meow";
}

Constructor functions are invoked using the new keyword:

let cat = new Cat("Tom");
cat.sound; // Returns "Meow"

Constructor functions also have a prototype property which points to an object whose properties are automatically inherited by all objects created with that constructor:

Cat.prototype.speak = function() {
  console.log(this.sound);
}

cat.speak(); // Outputs "Meow" to the console

Objects created by constructor functions also have a special property on their prototype called constructor, which points to the function used to create them:

cat.constructor // Returns the `Cat` function

Objects created by constructor functions are also considered to be “instances” of the constructor function by the instanceof operator:

cat instanceof Cat // Returns "true"

Feedback about page:

Feedback:
Optional: your email if you want me to get back to you:



Table Of Contents