如何找到标签页关闭并清除本地存储空间

时间:2019-05-13 06:28:21

标签: javascript html5 angular6 local-storage

我在javascript中使用onbeforeunload函数,但问题是,如果浏览器刷新,那么还要清除本地存储。我只想在浏览器关闭时清除本地存储,而不刷新浏览器

window.onbeforeunload = function(e) {
        localStorage.setItem('isLoggedIn', 'false');
      };

2 个答案:

答案 0 :(得分:2)

您可以改用sessionStorage。关闭浏览器后,它将自动清除。

示例:

sessionStorage.setItem("isLoggedIn","true"); // Value will be set to null when browser is closed

答案 1 :(得分:0)

可能需要了解有关本地存储,会话存储和Cookies的信息。存储数据有3个选项,但这是另一个概念之一。

  1. 本地存储在本地存储,如果您不删除此浏览器或清除浏览器,它将永久保存。
  2. 会话存储用于包含状态或令牌或用户一些信息。
  3. 关闭浏览器后,会话存储会自动删除。 (注意:如果您花了任何时间,都可以像注销一样更改它。)
  4. Cookies 是将数据存储在浏览器或客户端站点中的另一种强大方法。它还允许时间表或日期。时间或日期到期时,它会自动销毁。

有3个存储空间,它们的概念和工作方式互不相同。

enter image description here

会话存储操作:

sessionStorage.SessionName = "SessionData" ,

sessionStorage.getItem("SessionName") and

sessionStorage.setItem("SessionName","SessionData");

enter image description here

Cookie示例简单操作:

enter image description here

enter image description here

您还可以了解更多信息:

https://www.quora.com/What-is-the-difference-between-sessionstorage-localstorage-and-Cookies

https://developer.mozilla.org/en-US/docs/Mozilla/Gecko/DOM_Storage_implementation_notes

https://www.w3schools.com/js/js_cookies.asp

===谢谢===