H5的storage有sessionstorage&localStorage,其中他们的共同特色是API相同html
下面直接上代码,storage中的存储与删除:浏览器
<!DOCTYPE html>
而 cookie localStorage sessionStorage 区别
一、cookie
在客户端记录信息肯定用户身份。
因为HTTP是一种无状态的协议,服务器单从网络链接上无从知道客户身份。就给客户端们颁发一个通行证,每人一个,不管谁访问都必须携带本身通行证。这样服务器就能从通行证上确认客户身份了。这就是Cookie的工做原理。
客户端发送一个http请求到服务器端
服务器端发送一个http响应到客户端,其中包含Set-Cookie头部
客户端发送一个http请求到服务器端,其中包含Cookie头部
服务器端发送一个http响应到客户端服务器
二、localStorage
localStorage 是 HTML5 标准中新加入的技术,规则事先已经设定好了,要访问同一个localStorage对象,页面必须来自同一个域名,子域名无效,使用同一种协议,在同一个端口,数据会保留到经过js删除或者用户删除浏览器缓存。cookie
三、sessionStorage
sessionStorage 与 localStorage 的接口相似,但保存数据的生命周期与 localStorage 不一样。能够将一部分数据在当前会话中保存下来,刷新页面数据依旧存在。但当页面关闭后,sessionStorage 中的数据就会被清空。网络
四、三者对比
特性 Cookie localStorage sessionStorage
存放位置
浏览器端
浏览器端
浏览器端
数据的生命期 可设置失效时间,默认是关闭浏览器后失效 除非被清除,不然永久保存 仅在当前会话下有效,关闭页面或浏览器后被清除
存放数据大小 4K左右 通常为5MB 通常为5MB
做用域z
同源窗口中共享
同源窗口中共享
不可在不一样浏览器窗口中共享
与服务器端通讯 每次都会携带在HTTP头中,若是使用cookie保存过多数据会带来性能问题。(服务器与客户端可互传) 仅在客户端(即浏览器)中保存,不参与和服务器的通讯 仅在客户端(即浏览器)中保存,不参与和服务器的通讯session