У меня есть функция:
function createOrLoadDB (host) {
var db = JSON.parse( window.localStorage.getItem(host) )
if ( db == null ) {
db = new InitDB(host)
}
else {
db.__proto__ = InitDB.prototype
}
return db
}
Мне кажется, что это будет работать, но когда я звоню db.flushDB()
, я получаю
TypeError: Object #<an InitDB> has no method 'flushDB'
Что забавно,потому что у меня есть это в моем объекте def:
function InitDB ( host ) {
... stuff
this.flushDB = function () {
window.localStorage.setItem( this.host, JSON.stringify( this ) )
}
... stuff
}
Я что-то упустил.__proto__
заставил его сказать #<an InitDB>
, но он все еще не подбирает методы ...