随着互联网的快速发展,基于网页的应用越来越普遍,同时也变的越来越复杂,为了满足各种各样的需求,会经常性在本地存储大量的数据,HTML5规范提出了相关解决方案。
一,本地存储特性
1、数据存储在用户浏览器中
2、设置、读取方便、甚至页面刷新不丢失数据
3、容量较大约5M
4、只能存储字符串,可以将对象JSON.stringify() 编码后存储
二,window.sessionStorage
1、生命周期为关闭浏览器窗口
2、在同一个窗口(页面)下数据可以共享
3、以键值对的形式存储使用
存储数据:
sessionStorage.setItem(key,value)
获取数据:
sessionStorage.getItem(key)
删除数据:
sessionStorage.removeItem(key)
清空数据:(所有都清除掉)
sessionStorage.clear()
三.window.localStorage
存储空间高达5m
没有过期时间
localStorage 会一直存在
sessionStorage 窗口关闭失效
cookie会在客户端和服务器端往返 ,本地存储只存储在本地
存储数据:
设置存储有三种方式:
localStorage.key="value"
localStorage["key"]="value"
localStorage.setItem(key, value)
localStorage.setItem(key,value)
//参数1 是键
//参数2是对应的值
//setItem 也是修改元素
注意:不能直接存储对象 可以将对象转化为1个字符串
//注意:不能直接存储对象 可以将对象转化为1个字符串
//通过json
varstr=JSON.stringify(对象名);
localStorage.setItem('对象名',str);
//使用的时候可以再将json字符串转为对象
varstr1=localStorage.getItem('对象名');
varobj=JSON.parse(str);
获取数据:
localStorage.getItem(key(1))
//通过索引获取key值
//没有就返回null
删除数据:
localStorage.removeItem(key)
//删除 通过key值
清空数据:(所有都清除掉)
localStorage.clear()
对象长度(有多少个元素)
localStorage.length