1. HTML5的Web storage的存储方式有两种:sessionStorage和localStorage。
- sessionStorage用于本地存储一个会话中的数据,当会话结束后就会销毁;
- 和sessionStorage不同,localStorage用于持久化的本地存储,除非用户主动删除数据,否则数据永远不会过期;
- cookie是网站为了标示用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。
区别:
- 从浏览器和服务器间的传递看: cookie数据始终在同源的
http请求
中携带(即使不需要),即cookie在浏览器和服务器
间来回传递;而sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。 - 从大小看: 存储大小限制不同,
cookie
数据不能超过4k
,只适合保存很小的数据;而sessionStorage和localStorage 虽然也有存储大小的限制,但比cookie大得多,可以达到5M
或更大。 - 从数据有效期看:
sessionStorage
在会话关闭会立刻关闭
,因此持续性不久;cookie只在设置的cookie过期时间之前
一直有效,即使窗口或浏览器关闭。而localStorage始终有效
。 - 从作用域看: sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面;而localStorage和cookie都是可以在所有的同源窗口中共享的。