数据存储:localStorage、sessionStorage、cookie三者的区别

localStorage、sessionStorage、cookie三者的区别

(1)存储大小

cookie数据大小不能超过4k ;

cookie存储是可以设置过期时间;

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

cookie存在时间比较长了;

(2)有效时间

localStorage 存储持久数据,浏览器关闭后数据不丢失除非主动删除数据;

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

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

(3)数据与服务器之间的交互方式

cookie的数据会自动的传递到服务器,服务器端也可以写cookie到客户端;

sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存;

(4)作用域

localStorage的作用域限制在文档源的;

localStorage同源的文档之间可以相互访问和修改相同名称的数据;

localStorage受浏览器厂商的限制,chrome下存储的数据,360浏览器下不可访问; 会得到‘Invalid Date’;

 

sessionStorage在localStorage的同源策略基础之上,还有更严格的限制:

他还被限制在窗口中,意思是同一个窗口或标签页的不同页面之间可以共享sessionStorage;

但是不同的窗口或标签页之间不能共享sessionStorage,即便他们是同一个页面地址;

这里的窗口是顶级窗口,如果里面有多个iframe,他们之间共享sessionStorage;

 

posted on 2022-07-24 17:21  香香鲲  阅读(45)  评论(0编辑  收藏  举报