html---Web Storage存储

随声附和 提交于 2021-01-07 08:13:54

在HTML5中,除了Canvas元素之外,另一个新增的非常重要的功能是可以在客户端本地保存数据的Web Storage功能,之前可以使用Cookies在客户端保存如用户名等简单用户信息,但通过长期使用,人们发现Cookies储存永久数据存在几个问题

  • 大小:Cookies的大小被限制在4kb
  • 带宽:Cookies是碎HTTP事物一起被发送的,因此会浪费一部分发送Cookies时使用的带宽
  • 复杂性:要正确的操纵Cookies是很困难的

针对这些问题,HTML5中,重新提供了一种在客户端本地保存数据的功能,就是Web Storage功能,顾名思义,Web Storage功能就是在Web上存储数据的功能,这里的存储是针对客户端本地而言的。具体分两种

  • sessionStorage:将数据保存在session对象中。Session是值用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏览这个网站所胡斐的时间。Session对象可以用来保存在这段时间内所要求保存的任何数据
  • localStorage:将数据保存在客户端本地的硬件设备中,即使浏览器被关闭了,改数据仍然存在,下一次打开浏览器访问网站时仍然可以继续使用。若要删除,可直切清除cookies即可;在程序中,可执行localStorage.clear()来清除

例子

html网页文件

<body>
  <
p id="msg"></p>   <input type="text" id="input" />   <input type="button" value="保存数据" onclick="saveStorage('input')"/>   <input type="button" value="读取数据" onclick="loadStorage('msg')"/>
</body>

 

js文件

function saveStorage(id) {
    var target = document.getElementById(id);
    var str = target.value;
    // 保存数据的方法
    // sessionStorage.setItem("message",str);
    localStorage.setItem("message",str);
}

function loadStorage(id) {
    var target = document.getElementById(id);
    // 读取数据
    // var msg = sessionStorage.getItem("message");
    var msg = localStorage.getItem("message");
    target.innerHTML = msg;
}

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!