sessionStorage的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sessionStorage的使用相关的知识,希望对你有一定的参考价值。

参考技术A

sessionStorage保存的数据用于浏览器的一次会话,当会话结束(通常是该窗口关闭),数据被清空;sessionStorage 特别的一点在于, 即便是相同域名下的两个页面,只要它们不在同一个浏览器窗口中打开,那么它们的 sessionStorage 内容便无法共享 ;localStorage 在所有同源窗口中都是共享的;cookie也是在所有同源窗口中都是共享的。除了保存期限的长短不同,SessionStorage的属性和方法与LocalStorage完全一样。

基于上面的特点,sessionStorage 可以有效对表单信息进行维护,比如刷新时,表单信息不丢失。

sessionStorage 更适合用来存储生命周期和它同步的会话级别的信息。这些信息只适用于当前会话,当你开启新的会话时,它也需要相应的更新或释放。比如微博的 sessionStorage就主要是存储你本次会话的浏览足迹:

lasturl 对应的就是你上一次访问的 URL 地址,这个地址是即时的。当你切换 URL 时,它随之更新,当你关闭页面时,留着它也确实没有什么意义了,干脆释放吧。这样的数据用 sessionStorage 来处理再合适不过。

localStorage,sessionStorage的使用

最近因为项目上需要使用到客户端存储,所以稍微研究了一下,以下说说自己的理解和使用经验

1.调用方法相同

各自都包含以下几种操作:

//根据key获取对应的值;

window.sessionStorage.getItem(key);

window.localStorage.getItem(key);

//新增key-value,若key已存在,则更新value;

window.sessionStorage.setItem(key,value);

window.localStorage.setItem(key,value);

//根据key移除对应的值

window.sessionStorage.removeItem(key);

window.localStorage.removeItem(key);

//移除全部key-value

window.sessionStorage.clear();

window.localStorage.clear();

//根据索引获取对应key

window.sessionStorage.key(index);

window.localStorage.key(index);

2.生命周期不同

sessionStorage是人如其名,只针对当前session(会话)有效,关闭标签页即失效;

localStorage则不然,即使关闭了标签页甚至浏览器,依然存在,下次打开页面时,依然可以直接使用,

  但是要注意,清除浏览器缓存时,localStorage的内容也会清理掉;

3.数据共享

sessionStorage由于上述特性,也就不能够在不同页面之间进行数据共享,同一域名也是不可以的;

localStorage则能够实现该需求,但是仅限于同一域名下;

 

暂时就了解到这些,若有问题请留言,若有不正确或不准确的地方,请指正...

以上是关于sessionStorage的使用的主要内容,如果未能解决你的问题,请参考以下文章

cookie,session以及localStorage,sessionStorage的区别

session,cookie,sessionStorage,localStorage的区别及应用场景

浅谈session,cookie,sessionStorage,localStorage的区别及应用场景

浅谈session,cookie,sessionStorage,localStorage的区别及应用场景

cookie 和 localStorage sessionStorage session不同

[转] 浅谈session,cookie,sessionStorage,localStorage的区别及应用场景