• jquery访问浏览器本地存储cookie,localStorage和sessionStorage


    一、cookie

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

      • cookie的访问需要服务器环境,直接在本地文件访问无效;
      • cookie的访问和设置需要导入jquery.cookie.js文件;
      • 浏览器对每一个访问的地址下可添加的cookie是有限制的;同时每个浏览器可添加的cookie个数也存在限制。
    3. 作用:
      • 储存用户的痕迹信息,如用户名,ID号,密码等,是服务器脚本发送给浏览器的加密数据,便于下次访问时用户可以直接登录等;
    4. 运用代码

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

    说明:

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

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

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

    二、localStorage

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

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

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

    1. //设置:
    2. localStorage.setItem("mycolor", "456");
    3. localStorage.mycolor= '456';
    4. //获取:
    5. var $color = localStorage.getItem("mycolor");
    6. var $color = localStorage.mycolor
    7. var $color = localStorage.key(0);//获取第一个键,按角标获取
    8. var $color = localStorage.key("");//获取最后一个键
    9. var $length = localStorage.length;//获取数据的长度
    10. //删除
    11. localStorage.removeItem("mycolor");
    12. //清空
    13. localStorage.clear();//将所有保存的数据删除

    说明:

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

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

    三、sessionStorage

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

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

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

    1. //设置:
    2. sessionStorage.setItem("mycolor", "456");
    3. sessionStorage.mycolor= '456';
    4. //获取:
    5. var $color = sessionStorage.getItem("mycolor");
    6. var $color = sessionStorage.mycolor
    7. var $color = sessionStorage.key(0);//获取第一个键,按角标获取
    8. var $color = sessionStorage.key("");//获取最后一个键
    9. var $length = sessionStorage.length;//获取数据的长度
    10. //删除
    11. sessionStorage.removeItem("mycolor");
    12. //清空
    13. sessionStorage.clear();//将所有保存的数据删除

    说明:

    1. sessionStorage的使用方法和localStorage一样。
    2. 数据是有排序的,后加入的角标靠前,最后加入的角标为0.
  • 相关阅读:
    PHP代码审计8—SSRF 漏洞
    关于维度上的注意事项
    MySQL是如何保证主从一致的
    (栈)剑指 Offer 09. 用两个栈实现队列(java)
    操作系统权限提升(二十五)之数据库提权-Centos7 安装MySQL
    java八股文面试[JVM]——什么情况下会抛出OOM
    2022.11.1 英语背诵
    推荐一个stable-diffusion-webui的升级项目stable-diffusion-webui-forge
    【MySQL】MVCC机制(undo log,read view)
    Android12 OTA编译差分包报错问题
  • 原文地址:https://blog.csdn.net/G11176593/article/details/127757427