HTML5中怎么使用网络存储存储键值对的数据

本篇内容介绍了“HTML5中怎么使用网络存储存储键值对的数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了临泽免费建站欢迎大家使用!

1.使用本地存储

我们使用localStorage对象来访问本地存储,他返回存储对象,存储使用存储键值对的数据,,他有下面一些属性和方法:

clear():清楚存储的键值对数据;

getItem():通过键获取值值;

key():通过索引获取键值;

长度:返回键值对的个数;

removeItem():通过键移出指定数据;

setItem():添加一个键值对,当指定键的键值对存在时,则实现更新操作;

[]:通过多重下标的方式,使用密钥获取指定的值值。

存储对象允许我们存储密钥和值都是字符串形式的密钥值对数据,密钥是唯一的,意味着当我们使用setItem方法添加键值对时,如果key值已经存在的话,将实现更新的操作。

复制代码代码如下: 

<!DOCTYPE HTML>

示例</ title></p><p><style></p><p>body> * {float:left;}</p><p>表{border-colla ps e:合拢; margin-left:50px;}</p><p>, td {padding:4px;}</p><p>th {text-align:right;}</p><p>输入{border:细实黑; padding:2px;}</p><p>标签{min-width:50px; display:inline-block; text-align:right;}</p><p>#countmsg,#buttons {margin-left:50px; margin-top:5px; margin-bottom:5px;}</p><p></ style></p><p></ head></p><p><body></p><p><div></p><p><div></p><p><label>键:</ label > <输入id =“ key”占位符=“ Enter Key” /> </ div></p><p><div></p><p><label>值:</ label> <输入id =“ value”占位符=“输入值” /> </ div></p><p><div id =“ buttons”></p><p><button id =“ add”>添加</ button></p><p><button id =“ clear”>清除</ button></p><p></ div></p><p><p id =“ countmsg”>有<span id =“ count”> </ span>项目</ p></p><p></ div></p><p><table id =“ data” border =“ 1”></p><p><tr></p><p><th>项目计数:</ th></p><p><td id =“ count“>-</ td></p><p></ tr></p><p></ table></p><p><script></p><p>displayData();</p><p>var button = document.getElementsByTagName('button');</p><p>for(var i = 0; i <button.length; i ++){</p><p>button [i] .onclick = handleButtonPress;</p><p>var value = document.getElementById('value')。value;</p><p>localStorage.setItem(key,value);</p><p>休息;</p><p>案例'clear':</p><p>localStorage.clear();</p><p>休息;</p><p>}</p><p>displayData();</p><p>}</p><p>函数displayData(){</p><p>var tableElement = document.getElementById('data');</p><p>tableElement.innerHTML ='';</p><p>var itemCount = localStorage.length;</p><p>document.getElementById('count')。innerHTML = itemCount;</p><p>for(var i = 0; i <itemCount; i ++){</p><p>var key = localStorage.key(i);</p><p>var val = localStorage.getItem(key);</p><p>tableElement.innerHTML + ='<tr> <th>'+键+':</ th> <td>'+ val +'</ td> </ tr>';</p><p></ html></p><p>浏览器不能删除我们通过localStorage的创建的数据,除非用户删除它。</p><p>2.监听存储事件</p><p>通过本地存储存储的数据对同源的文档具有可见性,比如你打开两个镀铬浏览器访问同一个URL地址,在任何一个页面上创建的本地存储对另外一个页面也是可见的。但是如果用别的浏览器(如firefox)打开相同的网址地址,本地存储是不可见的,因为他们不同源了。来监听存储的内容发生改变的,下面我们看他包含的其他属性:</p><p>key:返回发生改变的键值;</p><p>oldValue:返回发生改变键值以前的值值;</p><p>newValue:返回发生改变键值新的值值;</p><p>网址:发生改变的URL地址;</p><p>storageArea:返回发生改变的存储对象(是本地存储还是会话存储)</p><p>下面我们看个例子:</p><p>复制代码代码如下: </p><p><!DOCTYPE HTML></p><p><html></p><p><head></p><p><title>存储空间</ title></p><p><style></p><p>表{边界折叠:折叠;}</p><p>th,td {填充:4px;}</p><p></ style></p><p></ head></p><p><body ></p><p><table id =“ data” border =“ 1”></p><p><tr></p><p><th>键</ th></p><p><th> oldValue </ th></p><p><th> newValue </ th></p><p><th> url </ th></p><p>< th> storageArea </ th></p><p></ tr></p><p></ table></p><p><script></p><p>var tableElement = document.getElementById('data');</p><p>window.onstorage =函数(e){</p><p>var row ='<tr>';</p><p>行+ =' <td>'+ e.key +'</ td>';</p><p>行+ ='<td>'+ e.oleValue +'</ td>';</p><p>行+ ='<td>'+ e.newValue +'</ td>';</p><p>行+ ='<td>'+ e.url +'</ td>';</p><p>行+ ='<td>'+(e.storageArea == localStorage)+'</ td> </ tr>';</p><p>tableElement.innerHTML + =行;</p><p>}</p><p></ script></p><p></ body></p><p></ html></p><p>我们在例1中增删改改存储的数据,会在例2页面上显示出来。例2在chrome浏览器中运行正常,firefox没有反应,其他浏览器没有测试。</p><p>运行结果:</p><p>3.使用session storage</p><p>session storage在使用上和本地存储一样,只是他的访问性上只进入内部页面,并且页面关闭后会消失,我们通过sessionStorage来访问它。</p><p>复制代码代码如下: </p><p><!DOCTYPE HTML></p><p><html></p><p><head></p><p><title>示例</ title></p><p><style></p><p>body> * {float:left;}</p><p>table {border-collapse:塌陷; margin-left:50px;}</p><p>th,td { padding:4px;}</p><p>th {text-align:right;}</p><p>输入{border:细实黑色; padding:2px;}</p><p>标签{min-width:50px; display:inline-block; text-align:right;}</p><p>#countmsg ,#buttons {margin-left:50px; margin-top:5px; margin-bottom:5px;}</p><p></ style></p><p></ head></p><p><body></p><p><div></p><p><div></p><p><label>键:</ label> <输入id =“ key” placeholder =“ Enter Key” /> </ div></p><p><div></p><p><label>值:</ label> <输入id =“ value”占位符=“输入值” /> </ div></p><p><div id =“ buttons”></p><p><button id =“ add”>添加</ button></p><p><button id =“ clear”>清除</ button></p><p></ div></p><p><p id =“ countmsg”>有<span id =“ count”> </ </ span>项目</ p></p><p></ div></p><p><table id =“ data” border =“ 1”></p><p><tr></p><p><th>项目计数:</ th></p><p><td id =“ count”>-</ td></p><p></ tr></p><p></ table></p><p><iframe src =“ storage.html” width =“ 500” height =“ 175”> </ iframe></p><p><script></p><p>displayData();</p><p>var button = document.getElementsByTagName(“ button”);</p><p>for(var i = 0; i <button.length; i ++){</p><p>button [i]。onclick = handleButtonPress;</p><p>}</p><p>函数handleButtonPress(e){</p><p>开关(e.target.id){</p><p>案例'add':</p><p>var key = document.getElementById(“ key”)。value;</p><p>var value = document.getElementById(“ value”)。value;</p><p>sessionStorage.setItem(key,value);</p><p>休息;</p><p>案例'clear':</p><p>sessionStorage.clear();</p><p>休息;</p><p>}</p><p>displayData();</p><p>}</p><p>函数displayData(){</p><p>var tableElement = document.getElementById('data');</p><p>tableElement.innerHTML ='';</p><p>var itemCount = sessionStorage.length;</p><p>document.getElementById('count')。innerHTML = itemCount;</p><p>for(var i = 0; i <itemCount; i ++){</p><p>var key = sessionStorage.key(i);</p><p>var val = sessionStorage.getItem(key);</p><p>tableElement.innerHTML + =“ <tr> <th>” +键+“:</ th> <td>” + val +“ </ td> </ tr></p><p></ html></p><p>你在例3中做任何修改,例2的页面不会发生任何改变。</p><p>“HTML5中怎么使用网络存储存储键值对的数据”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!</p> <br> 网页题目:HTML5中怎么使用网络存储存储键值对的数据 <br> 本文路径:<a href="http://azwzsj.com/article/jdihej.html">http://azwzsj.com/article/jdihej.html</a> </div> </div> <div class="contentr fr"> <h3>其他资讯</h3> <ul> <li> <a href="/article/diigejg.html">ios移动开发具体过程 ios移动开发具体过程视频</a> </li><li> <a href="/article/diigego.html">jquery解析rss jquery解析json对象</a> </li><li> <a href="/article/diigejj.html">jquery遍历继续 jq遍历方法</a> </li><li> <a href="/article/diigedp.html">mysql数据量级怎么算 mysql 数据量 性能</a> </li><li> <a href="/article/diigeji.html">linux基础重要命令 linux基本命令总结</a> </li> </ul> </div> </div> </div> <!--底部--> <footer> <div class="foot"> <div class="container"> <h1>阿坝州建站您身边的网站建设服务商</h1> <div class="foot1"> <ul> <li> <dl><i class="iconfont"></i><b>地址ADDRESS</b></dl> <p>四川-阿坝州青羊区太升南路288号<br> 锦天国际A座10楼 </p> </li> <li> <dl><i class="iconfont"></i><b>电话/TEL</b></dl> <p><a href="tel:02886922220" target="_blank">028 86922220</a> (工作日)<br> <a href="tel:18980820575" target="_blank">1898082 0575</a> ( 7x24 ) </p> </li> <li> <dl><i class="iconfont"></i><b>QQ咨询</b></dl> <p> 244261566 (售前)<br> 631063699 (售后) </p> </li> <li> <dl><i class="iconfont"></i><b>邮箱/E: mail</b></dl> <p> service@cdcxhl.com (业务)<br> hr@cdcxhl.com (求职) </p> </li> </ul> </div> <div class="link"> 友情链接: <a href="http://www.cdhuace.com/faguangzi/bfg.html" title="亚克力背部发光字" target="_blank">亚克力背部发光字</a>   <a href="http://www.bjjxxy.cn/" title="圣月阀门" target="_blank">圣月阀门</a>   <a href="http://www.cxjianzhan.com/" title="网站制作公司" target="_blank">网站制作公司</a>   <a href="http://chengdu.cdcxhl.com/weixin/" title="微信公众号二次开发" target="_blank">微信公众号二次开发</a>   <a href="https://www.cdcxhl.com/idc/mintian.html" title="成都高电机柜租用" target="_blank">成都高电机柜租用</a>   <a href="https://www.scvps.cn/" title="域名注册" target="_blank">域名注册</a>   <a href="http://www.cdkjz.cn/" title="网站建设" target="_blank">网站建设</a>   <a href="https://www.cdxwcx.com/jifang/xibuxinxi.html" title="成都西信服务器托管" target="_blank">成都西信服务器托管</a>   <a href="http://chengdu.cdweb.net/weixinkaifa/xiaochengxu.html" title="成都小程序定制开发公司" target="_blank">成都小程序定制开发公司</a>   <a href="http://www.fadianjisc.cn/" title="四川柴油发电机" target="_blank">四川柴油发电机</a>    </div> </div> </div> <div class="copy container"> Copyright © 2024 All Rights Reserved. 四川阿坝州网站建设公司 版权所有 <a href="https://beian.miit.gov.cn/" target="_blank" rel="nofollow">蜀ICP备2024099935号-3 </a> [原创设计,独立版权。未经许可.不得拷贝或镜像]<br> <a href="http://www.kswsj.cn/" target="_blank">网站营销推广</a> | <a href="https://www.cdcxhl.com/pinpai.html" target="_blank">品牌网站设计</a> | <a href="http://www.cdweb.net/" target="_blank">自适应网站建设</a> | <a href="http://cdkjz.cn/wangzhan/pinpai/" target="_blank">品牌网站建设</a> | <a href="http://chengdu.cdxwcx.cn/" target="_blank">成都网站制作</a> | <a href="https://www.cdcxhl.com/cloud/" target="_blank">云服务器</a> | <a href="https://www.cdcxhl.com/weihu/jiangan.html" target="_blank">阿坝州网站维护</a> | (阿坝州网站建设QQ : 631063699 )</div> </footer> <!--在线咨询--> <div class="fot"> <ul> <li> <a href="mqqwpa://im/chat?chat_type=wpa&uin=532337155&version=1&src_type=web&web_src=oicqzone.com" target="_blank"> <img src="/Public/Home/img/fot1.png" alt="建站咨询"> <p>在线咨询</p> </a> </li> <li> <a href="tel:18980820575" target="_blank"> <img src="/Public/Home/img/fot2.png" alt="建站电话"> <p>拨打电话</p> </a> </li> </ul> </div> </body> </html> <script> $(".con img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>