商学院
(2)正确掌握HTML5 LocalStorage本地存储和sessionStorage使用
   
 
it之王
  被约:
决战天球商业模拟_管理人员模拟培训_创业模拟_商战模拟_MBA模拟课程
这里添加两个键值对a和b,并增加一个按钮。给a设置固定的值,当点击按钮时,修改b的值:

You have viewed this page 0  time(s).





sessionStorage和上文中提到的localStorage非常相识,方法也几乎一样:
非常通俗易懂的接口:
sessionStorage.getItem(key):获取指定key本地存储的值
sessionStorage.setItem(key,value):将value存储到key字段
sessionStorage.removeItem(key):删除指定key本地存储的值
sessionStorage.length是sessionStorage的项目数
sessionStorage与 localStorage 的异同
sessionStorage 和 localStorage 就一个不同的地方, sessionStorage数据的存储仅特定于某个会话中,也就是说数据只保持到浏览器关闭,当浏览器关闭后重新打开这个页面时, 之前的存储已经被清除。而 localStorage 是一个持久化的存储,它并不局限于会话。
sessionStorage和localStorage提供的key()和length可以方便的实现存储的数据遍历,例如下面的代码:
1 var storage = window.localStorage;
2 for (var i=0, len = storage.length; i < len; i++){
3 var key = storage.key(i);
4 var value = storage.getItem(key);
5 console.log(key + "=" + value);
6 }
sessionStorage 和 localStorage的clear()函数的用于清空同源的本地存储数据,比如localStorage.clear(),它将删除所有同源的本地存 储的localStorage数据,而对于Session Storage,它只清空当前会话存储的数据。
关闭页面会导致 sessionStorage 的数据被清除,但刷新或重新打开新页面数据还是存在,如果需要存储的只是少量的临时数据。我们可以使用sessionStorage 。或者做页面间的小交互。
sessionStorage 和 localStorage具有相同的方法storage事件,在存储事件的处理函数中是不能取消这个存储动作的。存储事件只是浏览器在数据变化发生之后给 你的一个通知。当setItem(),removeItem()或者clear() 方法被调用,并且数据真的发生了改变时,storage事件就会被触发。注意这里的的条件是数据真的发生了变化。也就是说,如果当前的存储区域是空的,你 再去调用clear()是不会触发事件的。或者你通过setItem()来设置一个与现有值相同的值,事件也是不会触发的。当存储区域发生改变时就会被触 发,这其中包含许多有用的属性:
storageArea: 表示存储类型(Session或Local)
key:发生改变项的key
oldValue: key的原值
newValue: key的新值
url*: key改变发生的URL
* 注意: url 属性早期的规范中为uri属性。有些浏览器发布较早,没有包含这一变更。为兼容性考虑,使用url属性前,你应该先检查它是否存在,如果没有url属性,则应该使用uri属性
如果调用clear()方法,那么key、oldValue和newValue都会被设置为null。
声明:该文及以下回复观点仅代表作者本人,五略商书系信息发布平台,仅提供信息存储空间服务。
转载请注明作者和出处:转自《五略商书》,作者it之王!
0人评论,点击参与
  相关阅读
共创江山
毛毛虫效应、美女效应、门槛效应、
罗米欧与朱丽叶效应
临近效应、留面子效应、流言的心理
库里肖夫效应、冷热水效应、连带效
北京商书策管理咨询,专业的精益生产咨询、人力资源咨询、企业内训
约课
讲师
学院
发现
我的