获取HTML5 localStorage密钥

我只是想知道如何在中获取所有关键值localStorage。


我试图用一个简单的JavaScript循环来检索值


for (var i=1; i <= localStorage.length; i++)  {

   alert(localStorage.getItem(i))

}

但是仅当键是从1开始的渐进数字时,它才有效。


如何显示所有键,以显示所有可用数据?


12345678_0001
浏览 597回答 3
3回答

阿晨1998

在ES2017中,您可以使用:Object.entries(localStorage)

弑天下

for (var key in localStorage){&nbsp; &nbsp;console.log(key)}编辑:这个答案越来越多,所以我想这是一个普遍的问题。我觉得我应该归功于任何可能迷失我的答案并认为它“正确”的人,因为它被接受进行更新了。事实是,上面的示例并不是执行此操作的正确方法。最好和最安全的方法是这样做:for ( var i = 0, len = localStorage.length; i < len; ++i ) {&nbsp; console.log( localStorage.getItem( localStorage.key( i ) ) );}

慕娘9325324

我喜欢这样创建一个容易看到的对象。Object.keys(localStorage).reduce(function(obj, str) {&nbsp;&nbsp; &nbsp; obj[str] = localStorage.getItem(str);&nbsp;&nbsp; &nbsp; return obj}, {});我也用cookie做类似的事情。document.cookie.split(';').reduce(function(obj, str){&nbsp;&nbsp; &nbsp; var s = str.split('=');&nbsp;&nbsp; &nbsp; obj[s[0].trim()] = s[1];&nbsp; &nbsp; return obj;}, {});
打开App,查看更多内容
随时随地看视频慕课网APP