cookie、localStorage、sessionStorage三者之间的对比

原创 小枝节KKW 随笔 JS 540阅读 2017-05-18 21:11:38 举报

1.cookie
有效期:默认存在于浏览器会话期间,浏览器关闭时消失,但可以设置max-age延长失效时间
作用域:cookie作用域是通过domain文档源和path文档路径来确定的,默认情况下,cookie和创建它的web页面有关,并对web页面和该web页面同目录或者子目录的其他web页面可见。当设置path="/",它的作用域就变成文档源级别的了。
2.localStorage
有效期:永不失效,除非主动删除
作用域:限定在文档源级别的。文档源通过协议、主机名以及端口三者来确定。
3.sessionStorage
有效期:窗口级别的,窗口或者标签关闭时数据失效
作用域:限定在文档源级别。如果相同的文档源渲染在不同的标签中,sessionStorage的数据无法共享

localStorage和sessionStorage的局限性:

  1. 大小限制:限制的大小因浏览器而异,对localStorage来说,大多数是5M,Chrome和Safari是2.5M;对sessionStorage来说,Chrome、Safari是2.5M,IE8+和Oprea是5M
  2. 只能存储字符串类型,非字符串类型在存储前会被转化为字符串。
  3. 由于是html5的新特性,一些浏览器可能不支持
  4. 在浏览器隐私模式或无痕模式下不可读取
评论 ( 1 )
最新评论