博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cookie封装函数与使用方法(转)
阅读量:5788 次
发布时间:2019-06-18

本文共 1891 字,大约阅读时间需要 6 分钟。

函数封装:

var Cookie = function(name, value, options) {    // 如果第二个参数存在    if (typeof value != 'undefined') {      options = options || {};      if (value === null) {        // 设置失效时间        options.expires = -1;      }      var expires = '';      // 如果存在事件参数项,并且类型为 number,或者具体的时间,那么分别设置事件      if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {        var date;        if (typeof options.expires == 'number') {          date = new Date();          date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));        } else {          date = options.expires;        }        expires = '; expires=' + date.toUTCString();      }      var path = options.path ? '; path=' + options.path : '', // 设置路径        domain = options.domain ? '; domain=' + options.domain : '', // 设置域         secure = options.secure ? '; secure' : ''; // 设置安全措施,为 true 则直接设置,否则为空       // 把所有字符串信息都存入数组,然后调用 join() 方法转换为字符串,并写入 Cookie 信息      document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');     } else { // 如果第二个参数不存在      var CookieValue = null;      if (document.cookie && document.cookie != '') {        var Cookie = document.cookie.split(';');        for (var i = 0; i < Cookies.length; i++) {          var Cookie = (Cookie[i] || "").replace( /^\s+|\s+$/g, "");          if (Cookie.substring(0, name.length + 1) == (name + '=')) {            CookieValue = decodeURIComponent(Cookie.substring(name.length + 1));            break;          }        }      }      return CookieValue;    }  };

  写入cookie信息:

// 简单写入一条 Cookie 信息cookie("user", "baidu");// 写入一条 Cookie 信息,并且设置更多选项cookie("user", "baidu", {  expires: 10, // 有效期为 10 天  path: "/", // 整个站点有效  domain: "www.baidu.com", // 有效域名  secure: true // 加密数据传输});

  读取:

cookie("user");

  删除:

cookie("user", null);

  

转载于:https://www.cnblogs.com/kaixin3946/p/6042014.html

你可能感兴趣的文章
Mac下配置多个SSH-Key (gitLab)
查看>>
Gradle之module间依赖版本同步
查看>>
一些kindle资源
查看>>
Node第一天
查看>>
【开源】多多客发布 3.0.0-alpha.6,Koa+Vue+Taro最佳实践
查看>>
页面搭建工具总结及扩展架构思考
查看>>
java springcloud版b2b2c社交电商spring cloud分布式微服务(十五)Springboot整合RabbitMQ...
查看>>
SpringCloud使用Prometheus监控(基于Eureka)
查看>>
10g手动创建数据库
查看>>
集群之RHCS
查看>>
auto_install_zabbix.sh
查看>>
Linux—文件系统
查看>>
运用Loadrunner测试Mysql数据库性能
查看>>
mysql ERROR 1396 (HY000): Operation CREATE USER failed 解决办法
查看>>
Spring MVC EL表达式不能显示
查看>>
Tomcat version 5.5 only supports J2EE 1.2, 1.3, and 1.4 Web modules
查看>>
【致青春】我们挥霍时间的年代
查看>>
WDS系列之四:自定义安装映像
查看>>
CentOS7 NTP server + keepalived
查看>>
jQuery 表单应用:全选/取消全选,表单验证,网页选项卡切换
查看>>