客户端数据持久化解决方案: localStorage
客户端数据持久化解决方案: localStorage
localStorage主要用来替代cookie,解决cookie读写困难、容量有限的问题。
localStorage
有以下几个特点
-
localStorage
是一个普通对象,任何对象的操作都适用。 -
localStorage
对象的属性值只能是字符串。 -
localStorage
支持的默认空间大小为5M存储容量超过了限度(5M)就会报QUOTA_EXCEEDED_ERR异常
-
localStorage
本身带有方法有-
添加键值对:localStorage.setItem(key,value)
-
获取键值:localStorage.getItem(key)
-
删除键值对:localStorage.removeItem(key)。
-
清除所有键值对:localStorage.clear()。
-
获取localStorage的属性名称(键名称):localStorage.key(index)。
-
获取localStorage中保存的键值对的数量:localStorage.length。
for(var i=0; i<localStorage.length; i++) { var key = localStorage.key(i); console.log(localStorage.key(i)+ " : " + localStorage.getItem(key)); }
-
-
localStorage事件 (有兼容问题)
事件对象的属性:
- storageArea: 表示存储类型(Session或Local)
- key:发生改变项的key
- oldValue: key的原值
- newValue: key的新值
- url*: key改变发生的URL
-
存数的数据是不能跨浏览器共用的,一个浏览器只能读取各自浏览器的数据,储存空间5M。