Есть фабрика, в которую добавляются конструкторы:
(function () {
var root = this;
// Фабрика для строительства объектов игры
// создает объект игры указанного типа
// по заданным параметрам
function Factory(type, params) {
if (typeof Factory[type] !== 'function') {
return;
}
return new Factory[type](params);
}
// добавление конструкторов
Factory.add = function (data) {
var name;
for (name in data) {
if (data.hasOwnProperty(name)) {
Factory[name] = data[name];
}
}
};
if (typeof exports !== 'undefined') {
if (typeof module !== 'undefined' && module.exports) {
exports = module.exports = Factory;
}
exports.Factory = Factory;
} else {
if (typeof define === 'function' && define.amd) {
define('Factory', [], function () {
return Factory;
});
} else {
root.Factory = Factory;
}
}
}.call(this));
Необходимо сделать такой функционал, который будет добавлять в один из конструкторов данные, которые будут использоваться при работе с объектом, созданным этим конструктором.
Данные должны быть динамическими (могли меняться). То есть функциональность объектов, созданных конструктором может отличаться
Как бы вы это сделали?