191 votes

HTML5 localStorage supprimer toutes les données

J'ai besoin d'effacer toutes les données que j'ai placé dans localStorage. Je veux dire complètement réinitialiser localStorage null, lorsqu'un utilisateur supprime son compte.

comment puis-je le faire avec une fonction simple?

j'ai essayé ceci:

function clearLocalStorage(){
    return localStorage= null;
}

ça ne fonctionne pas comme prévu !

495voto

Lyn Headley Points 3884

localStorage.clear();

devrait fonctionner.

105voto

Talha Points 7596

Si vous souhaitez supprimer/nettoyer toutes les valeurs du local de stockage que d'utiliser

localStorage.clear();

Et si vous souhaitez supprimer l'élément à partir de locaux de stockage que d'utiliser le code suivant

localStorage.removeItem(key);

12voto

John Points 1413

Il n'a travaillé que pour moi dans Firefox lors de l'accès à partir de l' window objet.

Exemple...

window.onload = function()
{
 window.localStorage.clear();
}

10voto

Jquery Ninja Points 695

À l'aide de .one assure que c'est fait en une seule fois et non pas à plusieurs reprises.

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

Il est bien de mettre plusieurs document.prêt écouteurs d'événement (si vous avez besoin d'autres événements à exécuter plusieurs fois) tant que vous n'en abusez pas, par souci de lisibilité.

.one est particulièrement utile lorsque vous voulez local de stockage pour être effacé qu'une seule fois, la première fois qu'une page web est ouvert ou lorsqu'une application mobile est installé, la première fois.

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

4voto

Elliot Bonneville Points 18141

Quelque chose comme cela devrait le faire:

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

Être prudent sur l'utilisation de cela, cependant, que l'utilisateur peut avoir d'autres données stockées dans localStorage et serait probablement assez coché si vous avez supprimé. Je recommande soit a) de ne pas stocker les données de l'utilisateur en localStorage ou b) de stocker le compte de l'utilisateur de choses dans une seule variable, et ensuite de compensation qu'au lieu de supprimer toutes les clés en localStorage.


Edit: Comme Lyn a souligné, vous serez bon avec localStorage.clear(). Mes points précédents sont encore debout, cependant.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X