--- id: 587d7dad367417b2b2512b77 title: Визначення функції конструктора challengeType: 1 forumTopicId: 16804 dashedName: define-a-constructor-function --- # --description-- Конструктори є функціями, що створюють нові об'єкти. Вони визначають властивості та поведінку, що будуть належати новому об'єкту. Можна вважати їх кресленням, планом для створення нових об'єктів. Ось приклад конструктора: ```js function Bird() { this.name = "Albert"; this.color = "blue"; this.numLegs = 2; } ``` Цей конструктор визначає об'єкт `Bird` із властивостями `name`, `color`, та `numLegs` із встановленими значеннями Albert, blue та 2 відповідно. При створенні конструкторів дотримуються кількох умов: # --instructions-- Створіть конструктор `Dog` із властивостями `name`, `color`, та `numLegs`, які будуть визначені двома рядками символів та числом відповідно. # --hints-- `Dog` повинен мати властивість `name` визначену рядком символів. ```js assert(typeof new Dog().name === 'string'); ``` `Dog` повинен мати властивість `color` визначену рядком символів. ```js assert(typeof new Dog().color === 'string'); ``` `Dog` повинен мати властивість `numLegs` визначену числом. ```js assert(typeof new Dog().numLegs === 'number'); ``` # --seed-- ## --seed-contents-- ```js ``` # --solutions-- ```js function Dog (name, color, numLegs) { this.name = 'name'; this.color = 'color'; this.numLegs = 4; } ```