zoukankan      html  css  js  c++  java
  • jquery访问浏览器本地存储cookie,localStorage和sessionStorage

    前言:cookie,localStorage和sessionStorage都是浏览器本地存储数据的地方,其用法不尽相同;总结一下基本的用法。


    一、cookie

    1. 定义:

      • 存储在本地,容量最大4k,在同源的http请求时携带传递,损耗带宽;
      • 可设置访问路径,只有此路径及此路径的子路径才能访问此cookie,存在有效的时间。
    2. 注意点

      • cookie的访问需要服务器环境,直接在本地文件访问无效;
      • cookie的访问和设置需要导入jquery.cookie.js文件;
      • 浏览器对每一个访问的地址下可添加的cookie是有限制的;同时每个浏览器可添加的cookie个数也存在限制。
    3. 作用:

      • 储存用户的痕迹信息,如用户名,ID号,密码等,是服务器脚本发送给浏览器的加密数据,便于下次访问时用户可以直接登录等;
    4. 运用代码

    //访问cookie,mycolor代表键
    var $cook = $.cookie("mycolor");
    
    
    //设置cookie
    $.cookie("mycolor", "red"});
    $.cookie("mycolor", "red", { expires: 7, path: '/' });//增加了有效时间和访问路径
    
    //删除cookie,传递null值
    $.cookie("mycolor", null});
    

    说明:

    1. 'mycolor'参数相当于cookie存储数据的键,即数据的名字,通过名字访问;
    2. cookie的设置有三个参数,第一为设置数据的键,第二个为设置数据的值,expires表示有效时间,单位为天,path为访问路径,"/"表示当前文件路径,在网站中表示根目录。

    注意:如果不设置路径,默认情况下只有设置cookie的网页才可以访问此cookie;如果想网站的网页可以共享cookie,将路径设为根目录。

    注意:cookie就相当于一个能存储数据的微型本地数据库,"mycolor"相当于每条数据的key。

    二、localStorage

    1. 定义:一个本地的小型数据文件

      • 存储在本地,容量为5M或者更大,不会在请求时候携带传递;
      • 数据在所有同源窗口中共享,一直有效,除非人为删除,可作为长期数据。
    2. 注意点:

      • localStorage数据不需要依赖服务器环境访问,可以直接在本地文件访问;
      • 不需要额外的文件支持。
      • 同源窗口指的是同一个域名下或者是index.html所在的文件夹下的文件路径。
    3. 代码运用

    //设置:
    localStorage.setItem("mycolor", "456");
    localStorage.mycolor= '456';
    
    //获取:
    var $color = localStorage.getItem("mycolor");
    var $color = localStorage.mycolor
    
    var $color = localStorage.key(0);//获取第一个键,按角标获取
    var $color = localStorage.key("");//获取最后一个键
    
    var $length = localStorage.length;//获取数据的长度
    
    //删除
    localStorage.removeItem("mycolor");
    
    //清空
    localStorage.clear();//将所有保存的数据删除
    

    说明:

    1. 设置数据格式类似键值对,"mycolor"代表key,"456"代表值。
    2. 数据是有排序的,后加入的角标靠前,最后加入的角标为0.

    注意:localStorage相当于将数据保存在磁盘,是永久的,但是其针对的是固定的域名下的文件,打开其他的域名下的网页,localStorage不会显示。

    三、sessionStorage

    1. 定义:一个本地的小型数据库

      • 存储在本地,容量为5M或者更大;
      • 不会在请求时候携带传递,在同源的当前窗口关闭前有效。
    2. 注意点:

      • sessionStorage同样不需要再服务器的环境下运行;
      • 不需要额外的文件支持;
      • sessionStorage数据设置后即使页面进行重载也不会清除;但当该窗口关闭后,里面的数据就会清除,再打开没有数据。相当于将数据保存在内存中
    3. 代码运用

    //设置:
    sessionStorage.setItem("mycolor", "456");
    sessionStorage.mycolor= '456';
    
    //获取:
    var $color = sessionStorage.getItem("mycolor");
    var $color = sessionStorage.mycolor
    
    var $color = sessionStorage.key(0);//获取第一个键,按角标获取
    var $color = sessionStorage.key("");//获取最后一个键
    
    var $length = sessionStorage.length;//获取数据的长度
    
    //删除
    sessionStorage.removeItem("mycolor");
    
    //清空
    sessionStorage.clear();//将所有保存的数据删除
    

    说明:

    1. sessionStorage的使用方法和localStorage一样。
    2. 数据是有排序的,后加入的角标靠前,最后加入的角标为0.
    • 作者:天宇之游
    • 出处:http://www.cnblogs.com/cwp-bg/
    • 本文版权归作者和博客园共有,欢迎转载、交流,但未经作者同意必须保留此段声明,且在文章明显位置给出原文链接。
  • 相关阅读:
    用C#实现DES加密解密解决URL参数明文的问题
    C#数据集合分页处理
    图像处理中的hard negative mining(难例挖掘)
    目标检测最近
    Object Detection(目标检测神文)
    ssm框架整合基本步骤练习总结
    Android 数据存储之 SQLite数据库存储
    android内部存储与外部存储理解
    Android数据存储之SharePreference和内部存储
    AlertDialog和自定义对话框
  • 原文地址:https://www.cnblogs.com/cwp-bg/p/7695976.html
Copyright © 2011-2022 走看看