global 内にデータを保持している場合、どのような問題が発生する可能性がありvar cache = {}
ますか?
ガベージコレクターによって収集されますか?視聴が終了するまで持続することを確認できますか?
次回ページを開いたときにも、キャッシュされたデータの準備ができているので、使用できるブラウザの組み込み機能はありますか?
ありがとう。
global 内にデータを保持している場合、どのような問題が発生する可能性がありvar cache = {}
ますか?
ガベージコレクターによって収集されますか?視聴が終了するまで持続することを確認できますか?
次回ページを開いたときにも、キャッシュされたデータの準備ができているので、使用できるブラウザの組み込み機能はありますか?
ありがとう。
javascriptのグローバルデータの存続期間を理解する必要があるようです。
特定のページの存続期間中、グローバル変数はその値をクリアするまで存続します。ガベージコレクションされることはありません。グローバルであるため、範囲外になることはありません。
ビューアがそのウィンドウの新しいページに移動するか、そのブラウザウィンドウを閉じると、その前のページのすべてのjavsacriptデータが解放され、使用できなくなります。
データを永続化して、そのページまたは他のページの将来のビューで使用できるようにする方法は3つあります。1)Cookie、2)ローカルストレージ、3)サーバーストレージ。これらすべての場合において、データは保存場所から取得してjavascriptに戻す必要があります。
ページが開いている限り、変数は存在します。閉じられた後(または離れた場所に移動された後)、ガベージコレクションが行われます。
キャッシュにデータがほとんどない場合は、シリアル化してCookieとして保存できます。大量のデータの場合、DOMストレージが役立つ場合がありますが、ブラウザー間で広くサポートされているわけではありません。