客户端常用的存储方式有三种:

  • localstorage
  • sessionstorage
  • cookie

localStorage和sessionStorage

localStorage

localStorage 没有时间限制的数据存储,也就是说, localStorage是永远不会过期的,除非主动删除数据。 数据可跨越多个窗口,无视当前会话,在同一个域中 被共同访问、使用。

sessionStorage

针对一个 session 的数据存储,任何一个页面存储的 信息在窗口中同一域下的页面都可以访问它存储的数 据。每个窗口的值都是独立的,它的数据会因窗口的 关闭而丢失,不同窗口间的sessionStorage是不可以共享的。

存储类型

  • 数组
  • json
  • 对象
  • 图片
  • 脚本
  • css样式表

使用场景

  • 弱网环境
  • 利用本地存储,减少网络请求

作用域

sessionStorage和localStorage作用域限定在文档源,
所以页面必须使用那个同一种协议,来自同一个域名,在同一个端口上。

cookie

区别

  • 存储大小
    • cookie存储大小4k
    • localStorage、sessionStorage存储大小5M,建议最大2.5M,防止内存溢出。
  • 兼容性
    • cookie兼容性很好
    • localStorage、sessionStorage 存在一定的兼容性问题,但不影响正常的使用
  • 局限、安全性
    • cookie在浏览器和服务器间来回传递,发送每一个http请求的时候都会出现在http头部,浪费带宽。
    • cookie的使用需要分装方法。

原文:大专栏  localstorage、 sessionstorage、 cookie|刘景照的博客


02-12 19:46