我的案例:localStorage键+值,当浏览器关闭时应该删除,而不是单个选项卡。

请看看我的代码,如果它是正确的和什么可以改进:

//创建localStorage key + value if (localStorage) { localStorage。myPageDataArr = { "name" => "Dan", "lastname" => "Bonny" }; } //当浏览器关闭时- psedocode $(窗口).unload(函数(){ localStorage。myPageDataArr = undefined; });


当前回答

这将对对象起作用。

localStorage.removeItem('key');

Or

localStorage.setItem('key', 0 );  

其他回答

for (let i = 0; i < localStorage.length; i++) {
    if (localStorage.key(i).indexOf('the-name-to-delete') > -1) {
        arr.push(localStorage.key(i));
    }
}

for (let i = 0; i < arr.length; i++) {
    localStorage.removeItem(arr[i]);
}

试着用

$(window).unload(function(){
  localStorage.clear();
});

希望这对你有用

您可以尝试以下代码删除本地存储:

delete localStorage.myPageDataArr;

您可以简单地使用sessionStorage。因为sessionStorage允许在浏览器窗口关闭时清除所有键值。

看这里:SessionStorage- MDN

与window global关键字一起使用:-

 window.localStorage.removeItem('keyName');