Rumah  >  Artikel  >  hujung hadapan web  >  html5中LocalStorage本地存储的示例

html5中LocalStorage本地存储的示例

黄舟
黄舟asal
2017-10-28 10:03:302697semak imbas

一、本地存储

  在HTML5诞生之前,网站如果想在浏览器端存储数据,只能使用Cookie,使用Cookie有较多的限制。

  Cookie问题:

   1.cookie大小限制在4K左右(各个浏览器不一致)

   2.cookie每次随着HTTP请求都会一起发送(造成很多不需要的cookie也会一起发送)

  本地存储:

   1.localStorage大小限制在5M(各个浏览器不一致)

   2.localStorage不会随着HTTP请求一起发送

二、会话级别的本地存储-sessionStorage

  sessionStorage:用户浏览某个网站时,从进入网站开始一直到关闭网站,这就是session对象的有效期。

  sessionStorage提供了四种方法对本地存储做相关操作。

  1. setItem( key, value );添加本地存储数据

  2.getItem( key );通过key获取相应的value值

  3.removeItem( key ); 通过key删除相应的value值

  4.clear();清空本地所有(限本域名下)session数据

 1 <script type="text/javascript"> 
 2     //添加key-value 数据到 sessionStorage 
 3     sessionStorage.setItem("name", "怜白"); 
 4     sessionStorage.setItem("job", "前端"); 
 5  
 6     //通过key来获取value 
 7     var name = sessionStorage.getItem("name"); 
 8  
 9     console.log(name); // 怜白
 10     console.log(sessionStorage.length); // 2
 11 
 12     // 通过key删除value
 13     sessionStorage.removeItem("job");
 14 
 15     console.log(sessionStorage.length); // 1
 16 
 17     //清空所有的key-value数据。
 18     sessionStorage.clear();
 19 
 20     console.log(sessionStorage.length); // 0
 21 </script>

三、永久本地存储-localStorage

  localStorage:用于持久化的本地存储,除非主动删除数据,否则数据是永远不会过期的。

  localStorage提供了四种方法对本地存储做相关操作。

  1. setItem( key, value );添加本地存储数据

  2.getItem( key );通过key获取相应的value值

  3.removeItem( key ); 通过key删除相应的value值

  4.clear();清空本地所有数据

<script type="text/javascript">
    //添加key-value 数据到 sessionStorage
    localStorage.setItem("name", "怜白");
    localStorage.setItem("job", "前端");

    //通过key来获取value
    var name = localStorage.getItem("name");

    console.log(name); // 怜白
    console.log(localStorage.length); // 2

    // 通过key删除value
    localStorage.removeItem("job");

    console.log(localStorage.length); // 1

    //清空所有的key-value数据。
    localStorage.clear();

    console.log(localStorage.length); // 0
</script>

四、总结  

  localStorage与sessionStorage 两种区别就是一个临时保存,一个长期保存。

  你可能见过下面这种写法:

<script type="text/javascript">
    // 设置name
    localStorage.name = "怜白"

    // 删除name
    delete localStorage.name
</script>

  上面直接赋值的方法确实可以实现功能,但是官方文档中将其定义为一种不安全的写法,所以不要用这种写法,使用localStorage提供的方法。

Atas ialah kandungan terperinci html5中LocalStorage本地存储的示例. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn