cookie相关的函数

Posted cxchanpin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cookie相关的函数相关的知识,希望对你有一定的参考价值。

浏览器中,使用javascript操作cookie的两个工具函数。

设置cookie值, 必须的參数是name和value,可选參数是过期天数和域名。

// 设置cookie值(key,value,过期天数,域名)
function setCookie(cookieName, cookieValue, expiredays, domain){
    // 0 比較特殊
    if(0 === cookieValue){
        cookieValue = 0;
    } else if(!cookieValue){
        cookieValue = "";
    }
    // 编码
    cookieValue = encodeURIComponent(cookieValue);
    //获取cookie字符串
    var cookieStr= cookieName + "=" + cookieValue;

    // 过期时间
    if(expiredays && !isNaN(expiredays)){
        var exdate=new Date();
        exdate.setDate(exdate.getDate()+expiredays);
        cookieStr += "; expires="+exdate.toGMTString();
    }
    // 域名
    //domain = domain || document.domain;
    if(domain){
        cookieStr += "; path=" + "/";
        cookieStr += "; domain="+domain;
    }

    // 保存本地 cookie
    document.cookie = cookieStr;

    // 返回设置后的值
    return cookieValue;
};

获取cookie值,仅仅须要一个name,过期时间和域名浏览器会自己管理,有效的cookie也仅仅能获取到名称和值。

// 获取cookie值(key)
function getCookie(cookieName){
    //获取cookie字符串
    var strCookie=document.cookie;
    //将多cookie分割为多个名/值对
    var arrCookie=strCookie.split("; ");
    var cookieValue = null;
    //遍历cookie数组,处理每一个cookie对
    for(var i=0;i<arrCookie.length;i++){
        var arr=arrCookie[i].split("=");
        //找到cookie,并返回它的值
        if(cookieName==arr[0]){
            cookieValue=(arr[1]);
            break;
        }
    }
    //
    if(!cookieValue){
        cookieValue = "";
    }
    cookieValue = decodeURIComponent(cookieValue);
    //
    return cookieValue;
};

假设要删除一个cookie要怎么做?

JS是没有这个API的。依据上面我们学到的知识。过期的cookie就相当于被删除了。
示比例如以下

setCookie("user", "renfufei");// "renfufei"
getCookie("user");// "renfufei"
setCookie("user", "renfufei", -1);// "renfufei"
getCookie("user");// ""

感谢: 太空飞猪

欢迎增加: CNC开源组件开发交流群 316630025

日期: 2016年1月7日

作者: 铁锚 http://blog.csdn.net/renfufei

以上是关于cookie相关的函数的主要内容,如果未能解决你的问题,请参考以下文章

C#-WebForm-★内置对象简介★Request-获取请求对象Response相应请求对象Session全局变量(私有)Cookie全局变量(私有)Application全局公共变量Vi(代码片段

几个关于js数组方法reduce的经典片段

最详细的cookie和浏览隐私之间的关系

JavaScript单行代码,也就是代码片段

c#如何采集需要登录的页面

IE无法获得cookie,ie不支持cookie的解决办法,火狐支持