zoukankan      html  css  js  c++  java
  • js读取cookie信息

    1. 第一种方式读取cookie信息:用document.cookie.split(“; “)的方式把字符串分割成几个段,然后遍历整个数组

    //javascript方法
    function getCookie(name){
      var arr = document.cookie.split("; ");
      for(var i=0,len=arr.length;i<len;i++){
        var item = arr[i].split("=");
        if(item[0]==name){
          return item[1];
        }
      }
      return "";
    }

    2. 第二中方法为匹配字符串

    在jquery中的扩展
    /**
    * cookie相关
    */
    $.cookie = {
    /**
    * 读取cookie
    *
    * @param {String} n=名称
    * @return {String} cookie值
    * @example
    * $.cookie.get('id_test');
    */
    get:function(n){
    var m = document.cookie.match(new RegExp( "(^| )"+n+"=([^;]*)(;|$)"));
    return !m ? "":unescape(m[2]);
    },
    /**
    * 设置cookie
    * @param {String} name cookie名称 --必填
    * @param {String} value cookie值 --必填
    * @param {String} domain 所在域名
    * @param {String} path 所在路径
    * @param {Number} hour 存活时间,单位:小时
    * @example
    * $.cookie.set('value1','cookieval',"id.qq.com","/test",24); //设置cookie
    */
    set:function(name,value,domain,path,hour){
    var expire = new Date();
    expire.setTime(expire.getTime() + (hour?3600000 * hour:30*24*60*60*1000));
    document.cookie = name + "=" + value + "; " + "expires=" + expire.toGMTString()+"; path="+ (path ? path :"/")+ "; " + (domain ? ("domain=" + domain + ";") : "");
    },
    /**
    * 删除指定cookie,复写为过期 !!注意path要严格匹配, /id 不同于/id/
    *
    * @param {String} name cookie名称
    * @param {String} domain 所在域
    * @param {String} path 所在路径
    * @example
    * $.cookie.del('id_test'); //删除cookie
    */
    del : function(name, domain, path) {
    document.cookie = name + "=; expires=Mon, 26 Jul 1997 05:00:00 GMT; path="+ (path ? path :"/")+ "; " + (domain ? ("domain=" + domain + ";") : "");
    },
    /**
    * 删除所有cookie -- 这里暂时不包括目录下的cookie
    * @example
    * $.cookie.clear(); //删除所有cookie
    */
    clear:function(){
    var rs = document.cookie.match(new RegExp("([^ ;][^;]*)(?=(=[^;]*)(;|$))", "gi"));
    // 删除所有cookie
    for (var i in rs){
    document.cookie = rs[i] + "=;expires=Mon, 26 Jul 1997 05:00:00 GMT; path=/; " ;
    }
    }
    };

    可用Jquery的cookie的插件处理

  • 相关阅读:
    微软开源全新的文档生成工具DocFX
    .NET平台微服务项目汇集
    谷歌发布的首款基于HTTP/2和protobuf的RPC框架:GRPC
    Microsoft开源跨平台的序列化库——Bond
    Oracle job procedure
    Windows10
    移动端Reactive Native轮播组件
    PHP完整环境搭建
    Webpack 入门
    git 提交
  • 原文地址:https://www.cnblogs.com/GerryOfZhong/p/5219625.html
Copyright © 2011-2022 走看看