то есть, фабрика — это объект, который содержит ссылки на конструкторы?
у меня есть 4 конструктора (Backbone.View), я не хочу знать о каждом из них. я просто создаю объект, который имеет метод create и знает обо всех 4 конструкторах. передавая в create тип вью, который мне надо получить, я его и получаю.
так?
var a1 = Backbone.View({});
var a2 = Backbone.View({});
var a3 = Backbone.View({});
var a4 = Backbone.View({});
function b() {
var types = {
first: a1,
second: a2,
third: a3,
fourth: a4
};
return {
create: function (type) {
var c;
c = new types[type]();
return c;
}
}
}
var d = new b();
d.create('first'); //мне не нужно знать, какой именно конструктор это сделает, достаточно просто сказать, что я хочу получить