Вы используете конструкторы неправильно. Конструкторы не должны ничего возвращать сами. Вы можете использовать свойство prototype
для объявления методов "класса" / объекта или установить их в конструкторе, как вы уже это делаете:
function Constructor(value) {
this.variable = value;
}
var obj = new Constructor('test');
obj.variable; // -> Returns 'test';
Так же, как вы можете объявить методы вашего объекта:
function Constructor(value) {
this.variable = value;
this.say = function(something) {
return "I say: " + something;
};
}
Или способ-прототип:
function Constructor(value) {
this.variable = value;
}
Constructor.prototype.say = function(something) {
return "I say: " + something;
};
Конечно, это общий и довольно плохой пример, но вы, вероятно, понимаете:)