zoukankan      html  css  js  c++  java
  • javascript 操作cookie类

     1 String.prototype.Trim = function()
     2 {
     3     return this.replace(/^\s+/g,"").replace(/\s+$/g,"");
     4 }
     5 
     6 function JSCookie()
     7 {
     8     this.GetCookie = function(key)
     9     {
    10         var cookie = document.cookie;
    11         var cookieArray = cookie.split(';');
    12         var getvalue = "";
    13         for(var i = 0;i<cookieArray.length;i++)
    14         {
    15             
    16             if(cookieArray[i].Trim().substr(0,key.length) == key)
    17             {
    18                 getvalue = cookieArray[i].Trim().substr(key.length + 1);
    19                 break;
    20             }
    21         }
    22 
    23         return getvalue;
    24     };
    25     this.GetChild = function(cookiekey,childkey)
    26     {
    27         var child = this.GetCookie(cookiekey);
    28         var childs = child.split('&');
    29         var getvalue = "";
    30         
    31         for(var i = 0;i < childs.length;i++)
    32         {
    33             if(childs[i].Trim().substr(0,childkey.length) == childkey)
    34             {
    35                 getvalue = childs[i].Trim().substr(childkey.length + 1);
    36                 break;
    37             }
    38         }
    39         return getvalue;
    40     };
    41     this.SetCookie = function(key,value,expire,domain,path)
    42     {
    43         var cookie = "";
    44         if(key != null && value != null)
    45             cookie += key + "=" + value + ";";
    46         if(expire != null)
    47             cookie += "expires=" + expire.toGMTString() + ";";
    48         if(domain != null)
    49             cookie += "domain=" + domain + ";";
    50         if(path != null)
    51             cookie += "path=" + path + ";";
    52         document.cookie = cookie;
    53     };
    54     this.Expire = function(key)
    55     {
    56         expire_time = new Date();
    57         expire_time.setFullYear(expire_time.getFullYear() - 1);
    58         var cookie = " " + key + "=e;expires=" + expire_time + ";"
    59         document.cookie = cookie;
    60     }
    61 }


    用法:
    一、设置cookie
    var cookie = new JSCookie();
    //普通设置
    cookie .SetCookie("key1","val1");

    //过期时间为一年
    var expire_time = new Date();
    expire_time.setFullYear(expire_time.getFullYear() + 1);
    cookie .SetCookie("key2","val2",expire_time);

    //设置域及路径,带过期时间
    cookie .SetCookie("key3","val3",expire_time,".cnblogs.com","/");

    //设置带子键的cookie,子键分别是k1,k2,k3
    cookie .SetCookie("key4","k1=1&k2=2&k3=3");

    二、读取cookie
    //简单获取
    cookie .GetCookie("key1");
    cookie .GetCookie("key2");
    cookie .GetCookie("key3");
    cookie .GetCookie("key4");
    //获取key4的子键k1值
    cookie .GetChild("key4","k1");

    三、删除
    cookie .Expire("key1");
    cookie .Expire("key2");
    cookie .Expire("key3");
    cookie .Expire("key4");
  • 相关阅读:
    firewall&iptables
    Linux压缩&解压缩
    Centos7.4 修改selinux错误导致服务器起不来
    Anaconda 安装 pytorch报错解决方法
    Java8 map value排序
    SparkStreaming获取kafka数据的两种方式:Receiver与Direct
    vim常用的骚操作
    http server
    转:WinInet, WinHttp, Winsock, ws2_32的区别和联系
    windows xp 驱动开发(三)DDK与WDK WDM的区别
  • 原文地址:https://www.cnblogs.com/RobotTech/p/1243110.html
Copyright © 2011-2022 走看看