客户端存储数据可以使用的技术
1. cookie技术:浏览器兼容性好,不能超4KB,操作复杂
2. Flash技术 :依赖Flash播放器
3. H5 WebStorage:不能超8MB,操作简单
4. IndexDB:存大量数据,还不标准
Session:会话(操作过程),浏览器从打开某个网站的一个页开始[会话开始],中间可能打开很多页面[会话中],直到关闭浏览器[会话结束]整个过程称为"浏览器与web服务器的一次会话"
WebStorage技术中,浏览器为用户提供二个对象
- window.sessionStorage,存储在浏览器分得到内存中,可供此次会话中所有页面共同使用,浏览器一旦关闭数据消失。
sessionStorage生命周期为当前窗口或标签页,一旦窗口或标签页关闭就销毁了,不同页面或标签页间无法共享sessionStorage的信息。
```
sessionStoage[key] = value; //保存一个数据
sessionStoage.setItem(key,value); //保存一个数据
var val = sessionStoage[key]; //获取一个数据
val val = sessionStoage.getItem(key); //获取一个数据
sessionStoage.removeItem(key) //删除一个数据
sessionStoage.clear(); //清空所有数据
sessionStoage.length; //数据个数
var key = sessionStoage.key(i); //获取第i key
```
- window.localStorage,存储在磁盘中,可供此次会话以及后续会话页面共同使用,即使浏览器关闭,数据不会消失。
localStorage只有同源的情况下(域名,协议,端口号都一致)才能在不同页面共享
```
localStorage [key] = value; //保存一个数据
localStorage.setItem(key,value); //保存一个数据
var val = localStorage [key]; //获取一个数据
val val = localStorage.getItem(key); //获取一个数据
localStorage.removeItem(key) //删除一个数据
sessionStoage.clear(); //清空所有数据
localStorage.length; //数据个数
var key = localStorage.key(i); //获取第i key
```