2012-03-27 7 views
0

HTML5 Webアプリケーション用にアプリ全体のインメモリキャッシュを実装する方法はありますか?HTML5でアプリ全体のインメモリキャッシュを実装するにはどうすればよいですか?

データのインメモリキャッシュを持つHTML5機能はありますか?私は、サーバーの応答を格納するだけのブラウザキャッシュについては言及していません。より効率的なオブジェクトをキャッシュする必要があります。

私が考えることのできる1つの可能性は、キャッシングとデータの取得を処理できるように、アプリの存続期間中に一度作成されるグローバルなシングルトンJavaScriptオブジェクトを実装することです。これが唯一の方法であれば、そのようなシングルトンオブジェクトはどのように作成できますか?

+0

の何が問題なのです[ 'localStorage'](https://developer.mozilla.org/en/DOM/Storage#localStorage):あなたが期待するよう

function Cache() { if ("instance" in arguments.callee) throw "new instance is not desired"; var simpleCache = {}; this.set = function(key, data) { simpleCache[key] = data; }; this.get = function(key) { return simpleCache[key]; }; }; Object.defineProperty(Cache, "instance", { value: new Cache(), writable: false }); 

は今、あなたは呼んで? –

+0

多くのHTML5 Webアプリケーションは、アプリケーションが進行するにつれてコンテンツで更新される単なるページになるように設計されています。 – Pointy

+0

'localStorage'はディスクに保存されていますか、それともメモリ内にありますか?モバイルブラウザでは1 MBの合計データサイズで動作しますか?私はこの情報をMozillaのリンクで見つけることができませんでした。 – aligf

答えて

5

ここでは、あまりにも多くの執行を必要としない、本当に単純なシングルトンです。本当に保護された方法で行うことができます。キャッシュコンストラクタは外部からアクセスできず、興味があれば教えてください。

Cache.instance.set("key1", { a: "field1Value", b:12 }); 
Cache.instance.set("key2", new XMLHttpReuquest()); 
関連する問題