Любая функция в JavaScript может быть конструктор
function A(paramA, paramB) {
this.paramA = paramA;
this.paramB = paramB;
//do something
}
A.prototype.method1 = function(){
console.log(this)
console.log('Inside method 1' + this.paramA)
}
var a = new A(1, {name: 'Name'});
console.log(a.paramA);
console.log(a.paramB.name)
a.method1()
Все переменные экземпляра могут быть созданы с помощью this.<variable-name>=<value>;
.
Методы экземпляров могут быть созданы с использованием свойства конструктора prototype
function
.
Вы можете прочитать больше о конструкторах
Simple “Class” Instantiation
Simple JavaScript Inheritance
Вы также можете проверить, существует ли параметр с помощью
if(paramB == undefined) {
//do something if paramB is not defined
}
JavaScript не Java. Период. У вас может быть только один конструктор, но вы выбираете разные типы поведения в зависимости от типов аргументов (например, 'typeof a == 'undefined'') – madfriend