Можете пожалуйста объяснить для чего нужны конструкторы? Я пару месяцев назад начал изучать фронт энд и наткнулся на эту тему, которую не могу однозначно понять. Я прочитал кучу материалов об этом и в рунете и на англоязычных ресурсах, и у меня есть несколько вопросов, на которые я не могу дать ответы. Прошу прощения если кого то заденет этот вопрос, и буду признателен, если кто то объяснит на пальцах следующие вещи:
1. Для чего нужны конструкторы? Можно пару простых примеров, где их конструкторы нельзя будет заменить обычными функциями?
Например в этом примере:
function Cat(name) {
this.name = name;
this.talk = function() {
alert( this.name + " say meeow!" )
}
}
Вместо
var cat1 = new Cat("Tom")
cat1.talk();
я могу использовать (почти тоже самое)
var cat1 = {name: "Tom"}
alert (cat1 + " say meeow!" );
Какой тогда прок мне использовать конструктор?