Skip to content

local 和 session storage

localStoragesessionStorage 都是 HTML5 提供的 Web 存储机制,用于在浏览器中存储数据。它们之间的主要区别在于数据的 生命周期作用域

生命周期:

  • localStorage: 存储在 localStorage 中的数据没有过期时间,除非手动删除或通过代码清除。这意味着即使关闭浏览器,数据仍然会保留。
  • sessionStorage: 存储在 sessionStorage 中的数据只在当前会话期间有效。当用户关闭浏览器窗口或标签页时,数据将被清除。

作用域:

  • localStorage: 存储在 localStorage 中的数据在同一域名下的所有页面中都是共享的。这意味着在同一域名下的不同页面之间可以共享数据。
  • sessionStorage: 存储在 sessionStorage 中的数据只在同一浏览器窗口或标签页中共享。这意味着在不同的浏览器窗口或标签页之间无法共享数据。

容量限制:

  • localStorage: 一般来说,浏览器对 localStorage 的容量限制在 5MB 左右。但是不同浏览器可能会有所不同。
  • sessionStorage: 与 localStorage 相同,浏览器对 sessionStorage 的容量限制也在 5MB 左右。

使用方式:

  • localStorage: 可以通过localStorage.setItem(key, value)将数据存储到 localStorage 中,通过localStorage.getItem(key)获取数据,通过localStorage.removeItem(key)删除数据。
  • sessionStorage: 可以通过sessionStorage.setItem(key, value)将数据存储到 sessionStorage 中,通过sessionStorage.getItem(key)获取数据,通过sessionStorage.removeItem(key)删除数据。

总结

localStoragesessionStorage 都是在浏览器中存储数据的机制,但它们在数据的生命周期和作用域上有所不同。

localStorage 的数据在浏览器关闭后仍然保留,可以在同一域名下的不同页面之间共享;而 sessionStorage 的数据只在当前会话期间有效,只能在同一浏览器窗口或标签页中共享。另外,它们的容量限制大致相同,都在 5MB 左右。