Web Storage是什么?

  Web Storage功能,顾名思义,就是在Web上针对client本地储存数据的功能,详细来说Web Storage分为两种;



sessionStorage:

  将数据保存在session对象中,所谓session是指用户在浏览某个站点时,从进入站点到浏览器关闭所经过的这段时间,也就是用户浏览这个站点所花费的时间。session对象能够用来保存在这段时间内所要求保存的不论什么数据。





localStorage:

  将数据保存在client本地的硬件设备(通常指硬盘,当然能够是其它的硬件设备)中,即是浏览器被关闭了,该数据仍然存在,下次打开浏览器訪问站点时,仍然能够继续使用。





sessionStorage与localStorage差别:

  这两者的差别在于sessionStorage为暂时保存,而localStorage为永久保存,下一节,我们将结合实例深入学习!

为什么要引出webStorage?

原因是: cookies存储永久数据存在一下几个问题:

1、cookies的大小被限制在4KB;

2、cookies是随HTTP事务一起发送的,因此会浪费一部分发送cookies时所使用的带宽;

3、cookies操作繁琐复杂;

1、1 SessionStorage:

  将数据保存在session对象中,所谓session是指用户在浏览某个站点时,从进入站点到浏览器关闭所经过的这段时间会话,也就是用户浏览这个站点所花费的时间就是session的生命周期。session对象能够用来保存在这段时间内所要求保存的不论什么数据。



此对象主要有两个方法:

保存数据:sessionStorage.setItem(Key, value);

读取数据:sessionStorage.getItem(Key);

Key:表示你要存入的键名称,此名称能够随便命名,能够依照变量的意思来理解。

Value:表示值,也就是你要存入Key中的值,能够依照变量赋值来理解。



用法:

保存数据:sessionStorage.setItem("website", "W3Cfuns.com");

读取数据:sessionStorage.getItem("website");


exaple:

<!DOCTYPE HTML>

<html>

    <head>

        <meta charset="utf-8">

        <title>本地存储SessionStorage</title>

        <script type="text/javascript">

                window.onload = function()

                {

                        alert("当你关闭此页面或者关闭浏览器的时候,sessionStorage中保存的数据才会消失,也就是说又一次打开此页面的时候,点击获取数据,将不会显示不论什么数据,刷新页面无效。\r\n由此能够证明,sessionStorage的生命周期为,某个用户浏览站点时,从进入到离开的这段时间。")  

                        //首先获得个input元素

                        var msg = document.getElementById("msg");

                        var getData = document.getElementById("getData");

                        var setData = document.getElementById("setData");

                        setData.onclick = function(){//存入数据

                                if(msg.value){

                                        sessionStorage.setItem("data", msg.value);

                                        alert("信息已保存到data字段中");

                                }else{

                                        alert("信息不能为空");

                                }

                        }  

                        getData.onclick = function(){//获取数据

                                var msg = sessionStorage.getItem("data");

                                if(msg){

                                        alert("data字段中的值为:" + msg);

                                }else{

                                        alert("data字段无值!");

                                }

                        }

                }

        </script>

    </head>

    <body>

        <input id="msg" type="text"/>

        <input id="setData" type="button" value="保存数据"/>

        <input id="getData" type="button" value="获取数据"/>

    </body>

</html>

1、2 LocalStorage:

用法与SessionStorage如出一辙,例如以下代码所看到的:

此对象主要有两个方法:

保存数据:localStorage.setItem(Key, value);

读取数据:localStorage.getItem(Key);

Key:表示你要存入的键名称,此名称能够随便命名,能够依照变量的意思来理解。

Value:表示值,也就是你要存入Key中的值,能够依照变量赋值来理解。



用法:

保存数据:localStorage.setItem("website", "W3Cfuns.com");

读取数据:localStorage.getItem("website");

exaple:

<!DOCTYPE HTML>

<html>

    <head>

        <meta charset="utf-8">

        <title>本地存储LocalStorage</title>

        <script type="text/javascript">

                window.onload = function()

                {

                        alert("当你关闭此页面或者关闭浏览器的时候,localStorage中保存的数据才会消失,也就是说又一次打开此页面的时候,点击获取数据,能够取到数据。")

                        //首先获得个input元素

                        var msg = document.getElementById("msg");

                        var getData = document.getElementById("getData");

                        var setData = document.getElementById("setData");

                        setData.onclick = function(){//存入数据

                                if(msg.value){

                                        localStorage.setItem("data", msg.value);

                                        alert("信息已保存到data字段中");

                                }else{

                                        alert("信息不能为空");

                                }

                        } 

                        getData.onclick = function(){//获取数据

                                var msg = localStorage.getItem("data");

                                if(msg){

                                        alert("data字段中的值为:" + msg);

                                }else{

                                        alert("data字段无值!");

                                }

                        }

                }

        </script>

    </head>

    <body>

        <input id="msg" type="text"/>

        <input id="setData" type="button" value="保存数据"/>

        <input id="getData" type="button" value="获取数据"/>

    </body>

</html>

HTML5中的Web Storage(sessionStorage||localStorage)理解与简单实例的更多相关文章

  1. html5中的Web Storage

    html5中的Web Storage包括了两种存储方式:sessionStorage和localStorage.sessionStorage用于本地存储一个会话(session)中的数据,这些数据只有 ...

  2. 浏览器 Web Storage - sessionStorage & localStorage

    storage事件 当储存的数据发生变化时,会触发storage事件.我们可以指定这个事件的回调函数. window.addEventListener("storage",onSt ...

  3. HTML5中的Web Workers

    https://www.cnblogs.com/yanan-boke/p/6954390.html https://segmentfault.com/a/1190000014938305 HTML5 ...

  4. html5 Web Storage(localStorage(),sessionStorage())

    Web Storage包括了两种存储方式:sessionStorage和localStorage sessionStorage 是会话级别的存储,这些数据只有在同一个会话中的页面才能访问并且当会话结束 ...

  5. HTML5权威指南--Web Storage,本地数据库,本地缓存API,Web Sockets API,Geolocation API(简要学习笔记二)

    1.Web Storage HTML5除了Canvas元素之外,还有一个非常重要的功能那就是客户端本地保存数据的Web Storage功能. 以前都是用cookies保存用户名等简单信息.   但是c ...

  6. HTML5本地存储 Web Storage

    Web Storage基本介绍 HTML5 定义了本地存储规范 Web Storage , 提供了两种存储类型 API  sessionStorage 和 localStorage,二者的差异主要是数 ...

  7. html5本地存储web storage的简单使用

    html5的一个非常cool的功能,就是web storage,类似于之前的cookie,不过与之不同的是,web storage 拥有本地5兆的容量可以存储,而cookie却只有4K,这是完全不能比 ...

  8. HTML5笔记3——Web Storage和本地数据库

    上一篇:HTML5笔记2——HTML5音/视频标签详解 Web Storage概述 在HTML5中,除了Canvas元素之外,另一个新增的非常重要的功能是可以再客户端本地保存数据的Web Storag ...

  9. HTML5 本地存储Web Storage简单了解

    ​HTML5本地存储规范,定义了两个重要的API :Web Storage  和  本地数据库Web SQL Database. 本地存储Web Storage 实际上是HTML4的cookie存储机 ...

随机推荐

  1. asp.net 微信公众号源码

    需要源码,请加QQ:858-048-581 功能菜单 该源码功能十分的全面,具体介绍如下:1.菜单回复:微信自定义回复.关注时回复.默认回复.文本回复.图文回复.语音回复. 请求回复记录.LBS位置回 ...

  2. Iterator 迭代器

    意图 提供一种方法顺序访问一个聚合对象中各个元素 , 而又不需暴露该对象的内部表示. 动机 一个聚合对象, 如列表(list), 应该提供一种方法来让别人可以访问它的元素,而又不需暴露它的内部结构 迭 ...

  3. 在Mac上安装MongoDB

    1.访问MongoDB官方下载地址 http://www.mongodb.org/downloads 2.点击“DOWNLOAD(tgz)”按钮: 3.将下载的文件压缩包解压后剪切到你的Mac中某个位 ...

  4. String 的常用操作

    String 类,我可以不负责的说在 Java 中这个类应该是使用最频繁的类了.然而关于它的常用的操作,我却不甚了解.整理这个东西很反人性的,这些方法,你看到他的时候感觉很简单,但是真正用的时候还是不 ...

  5. 如何保证Redis中的数据都是热点数据

    redis 内存数据集大小上升到一定大小的时候,就会施行数据淘汰策略.redis 提供 6种数据淘汰策略:volatile-lru:从已设置过期时间的数据集(server.db[i].expires) ...

  6. read()函数的困惑

    #define BUF_SIZE 10 int main() { int cnt; char buf[BUF_SIZE]; cnt = read(STDIN_FILENO, buf, BUF_SIZE ...

  7. iOS 11开发教程(十一)了解iOS11应用视图

    iOS 11开发教程(十一)了解iOS11应用视图 在iPhone或者iPad中,用户看到的和摸到的都是视图.视图是用户界面的重要组成元素.本节将主要讲解视图的添加.删除以及位置和大小的设置等内容. ...

  8. ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

    登录服务器,使用root用户连接mysql时出现错误提示: $ bin/mysql -uroot -p Enter password: ERROR (HY000): Can't connect to ...

  9. ZOJ 3623 Battle Ships DP

    B - Battle Ships Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu Subm ...

  10. Python知识(6)--numpy做矩阵运算

    矩阵运算 论numpy中matrix 和 array的区别:http://blog.csdn.net/vincentlipan/article/details/20717163 matrix 和 ar ...