Создание собственных объектов в Javascript

Всем доброго времени суток. На связи Алексей Гулынин. В прошлой статье мы говорили про свойство constructor. В данной статье я бы хотел поговорить про создание собственных объектов в Javascript. Кроме встроенных классов-конструкторов, в JavaScript встроено создание пользовательских классов-конструкторов. Что из себя представляют такие классы и для чего они нужны, попробуем разобраться на следующем примере:
Допустим, мы являемся владельцами авторынка и нам нужно каталогизировать все автомобили, которые есть у нас на рынке. В данном случае автомобили представляют собой объекты с уникальными, но похожими свойствами — марка, модель, год выпуска, цвет, пробег и т.д. Кроме свойств, мы хотим создать похожие методы, которые будут выводить различную информацию об автомобилях.
В данном случае нужно создать пользовательский объект, т.е. мы создаём свой класс-конструктор, который создаёт новый экземпляр объекта с заданными свойствами. Для этого создадим функцию:
function Auto(x, y, z, t) { this.brand = x; // марка this.model = y; // модель this.year = z; // год выпуска this.color = t; // цвет this.showInfo = function() { alert("Марка автомобиля: " + this.brand + "\nМодель автомобиля: " + this.model + "\nГод выпуска: " + this.year + "\nЦвет: " + this.color); } } var auto1 = new Auto("Nissan", "X-Trail", 2013, "Black"); // создаём объекта класса Auto auto1.showInfo(); // выводим информацию об объекте
Ключевое слово "this" указывает на новый создаваемый объект, т.е. оно указывает на конкретный экземпляр класса.
Если проверить свойство "constructor" у созданной переменной (auto1.constructor), то оно покажет:
function Auto(x, y, z, t) { код функции целиком }
В данной небольшой статье мы написали свой класс-конструктор, который будет создавать наши пользовательские объекты.
На связи был Алексей Гулынин, оставляйте свои комментарии, увидимся в следующих статьях.