質問

ユーザーのUIに関連するデータを含むオブジェクトがあります。今のところ、データはjsonの形式で提供されます。JSON.parseを実行してオブジェクトを評価し、それに応じてHTMLを生成します。

json文字列を(ローカルストレージではなく)ローカルセッションストレージに保存し、UIを新しいHTMLで更新する必要があるたびに呼び出すことを考えています。このように、ユーザーが同じブラウザで別のページを開いた場合、すべてのページのすべてのHTMLが同じになります。

今のところ、オブジェクトはメモリに保存されており、UIでのユーザーのアクションとオブジェクトの変更の間の相互作用は高速に実行されます。シリアル化してセッションストレージに保存すると、ブラウザはデータをRAMまたはハードドライブに保存してページの速度を低下させますか?

役に立ちましたか?

解決

html5仕様から取得:

ユーザーエージェントは再起動後のセッションの再開をサポートしている可能性があるため、ブラウジングコンテキストの存続期間は、実際のユーザーエージェントプロセス自体の存続期間とは無関係である可能性があります。

これは、ブラウザがこの情報をディスクに保存できることを意味します。

パフォーマンスは、ブラウザ固有およびOS固有の実装に依存します。ただし、この情報を取得することがボトルネックになる可能性はほとんどありません。

他のヒント

この小さなテストFF32、Chrome 37、IE11を実行しました。 ジェネラコディセタグプレ

FF
  • セッション:830ミリ秒
  • mem:92ミリ秒
  • ローカル:1156ミリ秒

    Chrome
    • セッション:2852ミリ秒
    • mem:147ミリ秒
    • ローカル:2893ミリ秒

      IE
      • セッション:977ミリ秒
      • mem:81ミリ秒
      • ローカル:15062ミリ秒

        テスト終了後、ブラウザのウィンドウが数秒間フリーズし、CPU +ディスクアクティビティが増加しました(localStorageが原因)。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top