我需要清除我设置为localStorage
的所有数据。这样,我的意思是在用户删除帐户时将localStorage
完全重置为null
。
如何通过简单的功能实现这一目标?
我试过了:
function clearLocalStorage(){
return localStorage= null;
}
但它没有按预期工作。
答案 0 :(得分:370)
localStorage.clear();
应该有用。
答案 1 :(得分:80)
如果要从本地存储中删除/清除所有值而不是使用
localStorage.clear();
如果您想从本地存储中删除特定项而不是使用以下代码
localStorage.removeItem(key);
答案 2 :(得分:9)
从window
对象访问它时,它只对我有用。
示例...
window.onload = function()
{
window.localStorage.clear();
}
答案 3 :(得分:7)
使用.one
确保只执行一次而不是重复执行。
$(window).one("focus", function() {
localStorage.clear();
});
可以放置几个document.ready事件监听器(如果你需要其他事件多次执行),只要你没有过度,为了便于阅读。
当您希望仅在第一次打开网页或第一次安装移动应用程序时清除本地存储时, .one
特别有用。
// Fired once when document is ready
$(document).one('ready', function () {
localStorage.clear();
});
答案 4 :(得分:4)
这样的事情应该做:
function cleanLocalStorage() {
for(key in localStorage) {
delete localStorage[key];
}
}
使用它时要小心,因为用户可能在localStorage
中存储了其他数据,如果删除了这些数据,可能会非常简单。我建议a)不要将用户的数据存储在localStorage
或b)将用户的帐户内容存储在单个变量中,然后清除它而不是删除localStorage
中的所有密钥。
编辑:正如Lyn指出的那样,localStorage.clear()
会很好。不过,我之前的观点仍然存在。