cookies、localStorage和sessionStorage的区别

cookie最典型的应用是用来保存用户信息、用户设置、密码记忆等。其优缺点如下:

优点:

1、简单易用;

2、浏览器负责发送数据;

3、浏览器自动管理不同站点的cookie。

缺点:

1、使用简单的文本存储数据,安全性很差,cookie保存在客户端浏览器,很容易被黑客窃取;

2、cookie存储的数据容量有限,上限为4KB

3、存储cookie数量有限,多数浏览器上限为30或50个,而IE6只支持每个域名存储20个cookie,也有部分浏览器存储cookie的数量高达300个;

4、如果浏览器的安全配置为最高级别,则cookie会失效;

5、cookie不适合大量数据的存储,因为cookie会由每个服务器的请求来传递,从而造成cookie速度缓慢效率低下。

 

Web Storage提供了两种在客户端存储数据的方法,即localStoragesessionStorage

localStorage是一种没有时间限制的数据存储方式,可以将数据保存在客户端硬盘或其他存储器,存储时间可以是一天、两天、几周或几年,关闭浏览器里面的数据不会消失,当再次打开浏览器依然可以访问这些数据。localStorage用于持久化的本地存储,除非自动删除数据,否则数据永远不会过期

sessionStorage指的是针对一个session的数据存储,即将数据保存在session中。web中session指的是用户在浏览某个网站时,从进入网站到关闭浏览器所经过的这段时间,可以称为用户与浏览器进行交互的“会话时间”。session对象用来保存这个时间段内所有要保存的数据,当用户关闭浏览器后,这些数据会被删除sessionStorage用于本地存储的一个会话(session)中的数据,这些数据只有在同一个会话中的页面才能访问,当会话结束后数据也随之销毁。sessionStorage不是一种持久化的本地存储,仅仅是会话级别的存储。

web Storage的优缺点:

优点:

1、存储空间:存储空间更大。IE8下每个独立的存储空间为10M,其他浏览器略有不同,但都比cookie要大很多;

2、服务器:存储内容不会发送到浏览器。当设置了cookie后,cookie的内容会随着请求一并发送到服务器,这对于本地存储的数据是一种宽带浪费,而Web Storage中的数据则仅仅存在于本地,不会与服务器发生任何交互。

3、接口:更多丰富易用的借口;

4、存储空间:独立的存储空间,每个存储空间是独立的,因此不会造成数据混乱;

缺点:

1、浏览器会为每个域分配独立的存储空间,即脚本在域A中无法访问到域B中的存储空间,但是浏览器却不会检查脚本所在的域与当前域是否相同,即在域B中嵌入域A中的脚本依然可以访问域B中的数据;

2、存储在本地的数据未加密而且永远不会过期,极易造成隐私泄露

 

posted @ 2017-03-15 14:38  爽朗琴天  阅读(658)  评论(0)    收藏  举报