HTML5 Web存储

作者: 不忘初心___ | 来源:发表于2017-03-29 14:26 被阅读0次

    HTML5 Web存储,一个比cookie更好用的方法

    什么是 HTML5 Web 存储?

    使用HTML5可以在本地存储用户的浏览数据。

    早些时候,本地存储使用的是 cookie。但是Web 存储需要更加的安全与快速. 这些数据不会被保存在服务器上,但是这些数据只用于用户请求网站数据上.它也可以存储大量的数据,而不影响网站的性能.

    数据以 键/值 对存在, web网页的数据只允许该网页访问使用。

    浏览器支持

    Internet Explorer 8+, Firefox, Opera, Chrome, 和 Safari支持Web 存储。

    注意:Internet Explorer 7 及更早IE版本不支持web 存储.

    localStorage和sessionStorage

    客户端存储数据的两个对象为:

    localStorage - 没有时间限制的数据存储

    sessionStorage - 针对一个session的数据存储

    在使用web存储前,应检查浏览器是否支持localStorage和sessionStorage

    if(typeof(Storage) !== "undefined"){ //支持的代码 } else { //sorry,不支持 };

    localStorage 对象

    localStorage 对象存储的数据没有时间限制。第二天、第二周或下一年之后,数据依然可用。

    实例:

    localStorage.sitename="菜鸟教程";

    document.getElementById("result").innerHTML="网站名:"+localStorage.sitename;

    实例解析:

    使用 key="sitename" 和 value="菜鸟教程" 创建一个 localStorage 键/值对。

    检索键值为"sitename" 的值然后将数据插入 id="result"的元素中。

    不管是localStorage,还是sessionStorage,可使用的API都相同,常用的有如下几个(以localStorage为例)

    1、保存数据 : localStorage.setItem(key,value);

    2、读取数据 : localStorage.getItem(key);

    3、删除单个数据 : localStorage.removeItem(key);

    4、删除所有数据 :localStorage.clear();

    5、得到某个索引的key : localStorage.key(index);

    sessionStorage对象

    sessionStorage方法针对一个session进行数据存储。当用户关闭浏览器窗口后,数据会被删除。

    webstorage和cookie的区别

    WebStorage的概念和cookie相似,区别是它是为了更大容量存储设计的。Cookie的大小是受限的,并且每次你请求一个新的页面的时候Cookie都会被发送过去,这样无形中浪费了带宽,另外cookie还需要指定作用域,不可以跨域调用。

    除此之外,WebStorage拥有setItem,getItem,removeItem,clear等方法,不像cookie需要前端开发者自己封装setCookie,getCookie。但是Cookie也是不可以或缺的:Cookie的作用是与服务器进行交互,作为HTTP规范的一部分而存在,而WebStorage仅仅是为了在本地“存储”数据而生。

    相关文章

      网友评论

        本文标题:HTML5 Web存储

        本文链接:https://www.haomeiwen.com/subject/ixgeottx.html