Я считаю, что решение моей проблемы относительно просто. Я просто этого не вижу.Загрузить объект с логикой
У меня есть объект:
function MyObject(){
this.attr = "anything";
}
MyObject.prototype.doSomething = function(){
// logic
}
я создаю объект с помощью new MyObject()
. Я использую его, и когда я хочу отказаться от того, что я делаю, я просто храню его в базе данных (mongodb). В Монго он хранится таким образом:
{ "attr" : "anything" }
Когда я загрузить объект из базы данных у меня только простой литерал объекта без какой-либо логики. Методы отсутствуют. Я могу понять, почему;), но я не знаю, как добавить логику к объекту буквального снова ...
Вопрос
Как я могу украсить полученный объект с его оригинальной логикой снова? Так что это выглядит, как это снова:
{
"attr" : "anything",
"doSomething": doSomething()
}
- Как сделать это просто?
- Есть ли другой подход к этому (за исключением хранения методов и всей иерархии прототипов с ним)?
json не может выполнять функции. почему у вас нет модели (MyObject) в качестве модуля, и при инициализации вы можете передать ей json из базы данных, чтобы установить ее состояние? – eltonkamami
@antoniskamamis Не могли бы вы предоставить пример кода? – zatziky