1.cookie
- 限制: 当设定一个cookie后,,在给它的域名发送请求时,都会包含这个cookie
- 数量: 浏览器限制一般为每个域30~50个,超过数量再设置,浏览器就会清楚以前设置的cookie
- 大小: 大约4096B(加减1)的长度限制
- 构成: 值、域、路径、失效时间、安全标志
- 操作方法: document.cookie属性,可单个属性设置,读取时会返回页面可用的所有cookie字符串,没法删除已有cookie,要通过设置失效时间为过去,浏览器会自动删除
document.cookie=encodeURIComponent('name')+'='+encodeURIComponent('jc');
- 子cookie: 绕开浏览器对cookie数量限制,用一个cookie存储多个键值对
name=name1=value1&name2=value2&name3=value3;
- 性能: 作为浏览器请求头发送,存储大量信息会影响特定域的请求性能
2.sessionStorage
- 限制: 存储会话数据,数据只保留到浏览器关闭,只能由最初给对象存储数据的页面访问到
- 操作方法:
sessionStorage.clear();
sessionStorage.getItem(name);
sessionStorage.key(index);
sessionStorage.removeItem(name);
sessionStorage.setItem(name,value);
3.localStorage
- 限制: 存储持久化数据,数据保留到通过js清除或用户清除浏览器缓存,页面必须来自同一个域名(子域名无效),使用同一种协议,在同一个端口上
- 其他同sessionStorage