当前位置:首页 > 英文周记 > 正文内容

关于sessionstorage的信息

更新时间:2026-07-18 01:37:35 周记网3年前 (2023-02-27)英文周记206

sessionstorage缓存是同步还是异步

sessionstorage缓存可以是同步,也可以是异步。根据查询网站相关***息显示:

1、sessionstorage缓存同步缓存只有当当前任务执行完后,才能执行下一项,异步这不会阻止当前任务。

2、sessionStorage作为html5中WebStorage的一种存储方式,localStorage和sessionStorage一样都是用来存储客户端临时信息的对象,sessionStorage属性允许在浏览器中存储key/value对的数据,但是,sessionStorage用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。

关于sessionstorage的信息

Cookie、sessionStorage和localStorage之间的区别

1.共同点

都是保存在 浏览器 端,并且是 同源 的

2.区别

①Cookie 数据始终在 同源的http请求中携带 (即使不需要),即cookie在浏览器和服务器之间来回传递,而 sessionStorage和localStorage不会自动把数据发送给服务端,仅保存在本地 。cookie数据还有路径的概念,可以限制cookie只属于某个路径下。

②存储大小的限制不同:

cookie数据不能超过4k ,同时因为 每次http请求都会携带cookie ,所以 cookie只适合保存很小 的数据,比如 会话标识 。

sessionStorage和localStorage 虽然也有存储大小的限制,但比cookie大的多, 可以达到5M或更大 。

③数据的有效期限不同

cookie 只在设置的 过期时间之前 有效,即使窗口关闭或浏览器关闭

sessionStorage 只在 当前浏览器窗口关闭之前 有效(面向session的浏览器存储,因此只存在于一个页面的生命周期,关闭即清除,采用 键值对 的形式存储数据)

localStorage一直有效 ,即使窗口或浏览器关闭也会一直对数据进行保存,因此 用作持久数据

④作用域不同

cookie 在 所有 的 同源 窗口中是 共享 的

sessionStorage 不在不同的浏览器窗口中共享,即使是同一个页面

localStorage 在 所有同源窗口中都是共享的

sessionStorage为啥能做到窗口隔离

因为sessionStorage数据在当前浏览器窗口关闭后自动删除。

sessionStorage 属性允许你访问一个,对应当前源的session Storage对象。

它与localStorage相似,不同之处在于localStorage里面存储的数据没有过期时间设置,而存储在sessionStorage里面的数据 在页面会话结束时会被清除。

生命周期

页面会话在浏览器打开期间一直保持,并且重新加载或恢复页面,仍会保持原来的页面会话(恢复数据)。

在新标签或窗口打开一个页面(从项目跳转新开一个页面)时会**顶级浏览会话的上下文作为新会话的上下文,这点和 session cookies 的运行方式不同。

打开多个相同的URL的Tabs页面,会创建各自的sessionStorage(多开同一项目,不会共享sessionStorage)。

关闭对应浏览器窗口,会清除对应的sessionStorage。

适合:解决项目支持多开导致共享数据引发的问题。

session storage可以删除吗

sessionStorage是用来存储客户端临时信息的对象。

它均只能存储字符串类型的对象(虽然规范中可以存储其他原生类型的对象,但是目前为止没有浏览器对其进行实现)。

sessionStorage生命周期为当前窗口或标签页,一旦窗口或标签页被永久关闭了,那么所有通过sessionStorage存储的数据也就被清空了。

不同浏览器无法共享localStorage或sessionStorage中的信息。相同浏览器的不同页面间可以共享相同的localStorage(页面属于相同域名和端口),但是不同页面或标签页间无法共享sessionStorage的信息。

巧用sessionStorage判断页面是关闭还是刷新

可能大家会有很多种方式可以实现,但是我今天给大家分享的一个纯前端的实现。\x0d\x0a\x0d\x0a全部代码也就这么几行,其中用到两个新特性sessionStorage和localStorage。\x0d\x0a\x0d\x0alocalStorage用来存储用户最后访问的url,sessionStorage的变量用来判断用户当前行为是新进系统,还是只是刷新页面。\x0d\x0a\x0d\x0a01 if(sessionStorage.opened){ \x0d\x0a02 console.log('窗口是刷新页面,不是新打开') \x0d\x0a03 }else{ \x0d\x0a04 console.log('窗口是新打开') \x0d\x0a05 //如果获取到历史url,则重定向到历史地址 \x0d\x0a06 if(localStorage.history localStorage.history != window.location.href ){ \x0d\x0a07 window.location.replace(localStorage.history); \x0d\x0a08 } \x0d\x0a09 } \x0d\x0a10 sessionStorage.setItem('opened','true'); \x0d\x0a11 localStorage.setItem('history',location.href);

简介cookie、session和localStorage,sessionStorage的区别

cookie和session的区别

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。

2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗考虑到安全应当使用session。

3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能考虑到减轻服务器性能方面,应当使用COOKIE。

4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。

5、所以建议:将登陆信息等重要信息存放为SESSION;其他信息如果需要保留,可以放在COOKIE中

6、session保存在服务器,客户端不知道其中的信息;cookie保存在客户端,服务器能够知道其中的信息。

7、session中保存的是对象,cookie中保存的是字符串。

8、session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到。而cookie中如果设置了路径参数,那么同一个网站中不同路径下的cookie互相是访问不到的。

cookie、session和localStorage的区别

cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递。而sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。cookie数据还有路径(path)的概念,可以限制cookie只属于某个路径下。

存储大小限制也不同,cookie数据不能超过4k,同时因为每次http请求都会携带cookie,所以cookie只适合保存很小的数据,如会话标识。sessionStorage和localStorage 虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大。

数据有效期不同,sessionStorage:仅在当前浏览器窗口关闭前有效,自然也就不可能持久保持;localStorage:始终有效,窗口或浏览器关闭也一直保存,因此用作持久数据;cookie只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。

作用域不同,sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面;localStorage 在所有同源窗口中都是共享的;cookie也是在所有同源窗口中都是共享的。

标签: sessionstorage

“关于sessionstorage的信息” 的相关文章

sessionstorage的简单介绍

sessionstorage的简单介绍

sessionStorage为啥能做到窗口隔离 因为sessionStorage数据在当前浏览器窗口关闭后自动删除。sessionStorage 属性允许你访问一个,对应当前源的session Sto...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。