Comment puis-je obtenir une liste des éléments stockés dans le stockage local HTML 5 à partir de javascript?
De référence HTML5 :
Comme d'autres objets JavaScript, vous peut traiter l'objet localStorage en tant que un tableau associatif. À la place d'utiliser les méthodes getItem () et setItem (), vous pouvez simplement utiliser des crochets.
localStorage.setItem('test', 'testing 1');
localStorage.setItem('test2', 'testing 2');
localStorage.setItem('test3', 'testing 3');
for(var i in localStorage)
{
console.log(localStorage[i]);
}
//test for firefox 3.6 see if it works
//with this way of iterating it
for(var i=0, len=localStorage.length; i<len; i++) {
var key = localStorage.key(i);
var value = localStorage[key];
console.log(key + " => " + value);
}
Cela produira:
testing 3
testing 2
testing 1
test3 => testing 3
test2 => testing 2
test => testing 1
Voici la JSFiddle Demo
localStorage est une référence à l'objet window.Storage, vous pouvez donc l'utiliser comme un autre objet:
Obtenir un tableau d'objets
Object.keys(localStorage)
Obtenir la longueur
Object.keys(localStorage).length
Itérer avec jQuery
$.each(localStorage, function(key, value){
.....
})
Puisque localStorage est une valeur-clé avec des chaînes, il suffit de le sérialiser avec JSON et de le désérialiser lorsque vous souhaitez le récupérer.
localStorage.setItem("bar", JSON.stringify([1,2,3]));
var foo = localStorage.getItem("bar");
JSON.parse(foo);
// returns [1,2,3]
Qu'en est-il de:
Object.keys(localStorage).map(k => localStorage.getItem(k))
vous pouvez utiliser Object.assign()
:
var data = Object.assign({}, localStorage)