Создание конструктора в JavaScript

В JavaScript можно создать собственный конструктор. Это позволяет создавать объекты собственного класса. Например, можно создать класс для схожих товаров интернет-магазина, а объекты для этих товаров создавать простым вызовом конструктора. Конструктор создаётся в виде функции:

function Fake() {
  /* описание свойств и методов */
}

var fake = new Fake();
alert(fake instanceof Fake); // true

Свойства и методы будущих объектов задаются операцией присвоения. При этом обязательно нужно указать ссылку на данный объект с помощью переменной this.

function Pen(color, price) {
  this.color = color;
  this.price = price;
  this.toCart = function() {
    var count = prompt('Вы хотите купить ручки.\n
      Цвет: ' + this.color + '.\n
      Введите кол-во:', '1');
    if (count) {
      alert('Добавлено в корзину: ручки.\n
        Цвет: ' + this.color + '\n
        Кол-во: ' + count);
    }
  }
  /* другие свойства и методы */
}

var pen_blue = new Pen('синий', '2$'); /* создан объект синих ручек */
var pen_red = new Pen('красный', '3$'); /* создан объект красных ручек */

pen_blue.toCart(); /* положить в корзину синие ручки */