Web存储相关API应用
- Web存储是window下的一个
全局属性
,window.xxxStorage调用
- 本地存储
localStorage
- 特点:在本地浏览器中保存持久的数据,除非用户手动清除浏览器缓存,否则会一直存在,浏览器中本地存储形式为json类型,即键值对的形式,键值均为字符串,且
键必须唯一
,一旦键出现重复,就会更新
为键所对应的新值 localStorage
对应的方法
名称 | 说明 | 返回值 |
---|---|---|
setItem(<key>,<value>) | 添加一个新的键值对,如果键存在就进行值的更新 | void |
getItem(<key>) | 取得指定键关联的值 | 字符串 |
[<key>] | 用数组的访问形式获取与指定键关联的值 | 字符串 |
removeItem(<key>) | 移除指定键对应的键值对 | 字符串 |
clear() | 移除所有的键值对 | void |
length | 返回已保存的键值对个数 | 数值 |
key(<index>) | 返回指定索引的键 | 字符串 |
监听存储事件
- 通过本地存储数据对所有
同源(协议、域名、端口一致)
文档都可使用,当某一个文档中修改了键的值,就会同步更新到具有监听存储事件的页签上 - 与
storage
同时指派的对象是一个StorageEvent
对象
名称 | 说明 | 返回值 |
---|---|---|
key | 返回发生变化的键 | 字符串 |
oldValue | 返回关联此键的旧值 | 字符串 |
newValue | 返回关联此键的新值 | 字符串 |
url | 返回制造变化的文档URL | 字符串 |
storageArea | 返回发生变化的Storage对象 | Storage |
注:如果事件里面没有可报告的值,即本地存储为空时,就会使用
null
,例如在clear()
所有键值对后就会在监听页签上出现null
注:对于storageArea
属性会返回发生变化的Storage对象,它可以是本地存储或会话存储
即storageArea == localStorage
||storageArea == sessionStorage
- 会话存储
sessionStorage
- 概述:会话存储基本方法同本地存储,只是会话存储的数据是
临时性
的,当浏览器关闭时,自动移除所存储的键值对(一次性)
写博客没多长时间,如果有什么错误或者需要图文并茂可私信或留言
\(^o^)/~