【发布时间】:2012-04-14 03:40:30
【问题描述】:
我的案例:带有键 + 值的 localStorage 应该在浏览器关闭而不是单个选项卡时删除。
请查看我的代码是否正确以及可以改进的地方:
//create localStorage key + value if not exist
if(localStorage){
localStorage.myPageDataArr={"name"=>"Dan","lastname"=>"Bonny"};
}
//when browser closed - psedocode
$(window).unload(function(){
localStorage.myPageDataArr=undefined;
});
【问题讨论】:
-
如果您想在浏览器关闭时清除本地存储,我会质疑您使用它的原因。
-
您可以同时拥有本地和会话存储对象——我会使用 sessionStorage 来存储会话值。顺便说一句,将值设置为 undefined 不会将其删除,或者将其从 localStorage 中删除,它只是将其值设置为 undefined。
-
@kennebec - 设置为
undefined会覆盖之前存储的项目。但是是的,使用.removeItem()更合适。 -
只使用 sessionStorage 而不是 localStorage
-
如果要清除整个存储空间,请使用
localStorage.clear();。
标签: javascript jquery html local-storage