这篇文章主要介绍“HTMl5中sessionStorage和本地存储的方法”,在日常操作中,相信很多人在HTMl5中sessionStorage和本地存储的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”HTMl5中sessionStorage和本地存储的方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
专注于为中小企业提供成都做网站、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业东昌免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了近千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
因此sessionStorage的不是一种持久化的本地存储,仅仅是会话级别的存储。而localStorage的用于持久化的本地存储,除非主动删除数据,否则数据是永远不会过期的。
一,网络存储和饼干的区别Web存储的概念和Cookie相似性,区别是它是为了达到更大容量存储设计的。Cookie的大小是重叠的,并且每次您请求一个新的页面的时候Cookie都会被发送过去,这样无形中浪费了带宽,另外饼干还需要指定作用域,不可以跨域调用。除此之外,网络存储拥有setItem,的getItem,的removeItem,清晰等方法,不像饼干需要前端开发者自己封装setCookie方法,getCookie方法。但是曲奇也是不可以或缺的:Cookie的作用是与服务器进行交互,作为HTTP规范的一部分而存在,而Web存储可能要在本地“存储”数据而生(来自@otakustay的解析)
二,html5 web storage的浏览器支持情况浏览器的支持除IE7及以下不支持外,其他标准浏览器都完全支持(ie及FF需在web服务器里运行),值得一提的是IE总是办好事,例如IE7,IE6中的UserData实际上就是JavaScript本地存储的解决方案。通过简单的代码封装可以统一到所有的浏览器都支持Web存储。要判断浏览器是否支持localStorage可以使用以下代码:
复制代码
代码如下:
if(window.localStorage){ alert(“浏览支持localStorage”)} else { alert(“浏览暂不支持localStorage”)} //或者if(typeof window.localStorage =='undefined'){alert(“浏览暂存)不支持localStorage“)}
三,localStorage和sessionStorage操作
localStorage和sessionStorage都具有相同的操作方法,例如setItem,getItem和removeItem等localStorage和sessionStorage的方法:setItem存储值用途:将值存储到键的范围内:.setItem(key,value)代码示例:
复制代码
代码如下:
sessionStorage.setItem(“ key”,“ value”); localStorage.setItem(“ site”,“ js8.in”);
getItem获取值用途:获取指定密钥本地存储的值的用法:.getItem(key)代码示例:
复制代码
代码如下:
var value = sessionStorage.getItem(“ key”); var site = localStorage.getItem(“ site”);
removeItem删除键用途:删除指定键本地存储的值的用法:.removeItem(key)代码示例:
复制代码
代码如下:
sessionStorage.removeItem(“ key”); localStorage.removeItem(“ site”);
clear清除所有的键/值用途:清除所有的键/值用法:.clear()代码示例:
复制代码
代码如下:
sessionStorage.clear(); localStorage.clear();
四,其他操作方法:点操作和[]
web Storage不但可以用自身的setItem,getItem等方便访问,也可以像普通对象一样用点(。)操作符,及[]的方式进行数据存储,像如下的代码:
复制代码
代码如下:
var storage = window.localStorage; storage.key1 =“ hello”; storage [“ key2”] =“世界”; console.log(storage.key1); console.log(storage [“ key2”]);
五,localStorage和sessionStorage的密钥和长度属性实现遍历
sessionStorage和localStorage提供的密钥()和长度可以方便地实现存储的数据遍历,例如下面的代码:
复制代码
代码如下:
var storage = window.localStorage; for(var i = 0,len = storage.length; i 六,storage事件 storage还提供了storage事件,当键值改变或清除的时候,就可以触发storageevent,如下面的代码就添加了一个storageEvent改变的监听: 复制代码 代码如下: if(window.addEventListener){ window.addEventListener(“ storage”,handle_storage,false); } else if(window.attachEvent){ window.attachEvent(“ onstorage”,handle_storage); }函数handle_storage(e){ if(!e){e = window.event;} } storageEvent对象的具体属性如下表: 属性 类型 描述 键 串 添加,删除或修改的命名密钥 旧值 任何 先前的值(现已覆盖);如果添加了新项目,则为null newValue 任何 新值;如果添加了项目,则为null 网址/ uri 串 调用触发此更改的方法的页面 到此,关于“HTMl5中sessionStorage和本地存储的方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!
网页名称:HTMl5中sessionStorage和本地存储的方法
网页URL:http://cdxtjz.cn/article/gpjsid.html