sessionStorage的使用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sessionStorage的使用相关的知识,希望对你有一定的参考价值。
参考技术AsessionStorage保存的数据用于浏览器的一次会话,当会话结束(通常是该窗口关闭),数据被清空;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的区别及应用场景