2012-05-22 14 views
108

localStorageに設定したすべてのデータを消去する必要があります。これにより、ユーザーがアカウントを削除したときにlocalStorageからnullに完全にリセットされます。HTML5 - localStorageすべてのデータを削除してクリアする

単純な関数でこれを行うにはどうすればよいですか?

function clearLocalStorage(){ 
    return localStorage= null; 
} 

しかし、期待どおりに動作しません:

は、私はこれを試してみました。

このような何かを行う必要があります
+0

はこれを参照してください、これはあなたが[ローカルストレージ](http://diveintohtml5.info/storage.html) – tilak

答えて

301

localStorage.clear();

が有効です。

+2

か、その助けをします。 [特別テキスト] –

+4

window.localStorage.clear(); //イオンで作業している場合、つまり、 –

+0

sessionStorage.clear();セッションストレージデータを削除します。 –

3

:ユーザーがlocalStorageに格納されている他のデータを有していてもよく、あなたはそれを削除した場合、おそらくかなりチェックされることになるよう

function cleanLocalStorage() { 
    for(key in localStorage) { 
     delete localStorage[key]; 
    } 
} 

が、しかし、これを使用して注意してください。 a)ユーザのデータをlocalStorageに保存しないか、またはb)ユーザのアカウントを1つの変数に保存してから、すべてのキーを削除する代わりにlocalStorageにあるキーを削除することをお勧めします。


編集:Lyn(リン)が指摘したように、あなたはlocalStorage.clear()と良いでしょう。しかし、私の前の点はまだ立っています。

66

次のコード

localStorage.removeItem(key); 
4

を使用するよりも、あなたはクリーン/

localStorage.clear(); 

を使用するよりも、ローカルストレージからすべての値を削除する場合そして、あなたはローカルストレージから特定の項目を削除する場合.oneを使用すると、これは1回だけ行われ、繰り返しは行われません。

$(window).one("focus", function() { 
    localStorage.clear(); 
}); 

読みやすさのために、限り、あなたはそれをやり過ぎてはいけないと(あなたが複数回実行するために他のイベントが必要な場合は)いくつかのdocument.readyイベントリスナーを入れても大丈夫です。

.oneは、Webページが初めて開かれたときまたはモバイルアプリケーションが最初にインストールされたときに1回だけローカルストレージを消去したいときに特に便利です。

// Fired once when document is ready 
    $(document).one('ready', function() { 
     localStorage.clear(); 
    }); 
6

windowオブジェクトからアクセスするときにのみ、Firefoxで私のために働きました。

例...

window.onload = function() 
{ 
window.localStorage.clear(); 
} 
関連する問題