首页 > 试题广场 >

js 操作获取和设置 cookie

[问答题]
var CookieUtil = {
            get: function(name){
                var cookiename = encodeURIComponent(name)+"=";
                var cookiestart = document.cookie.indexOf(cookiename);
                var cookievalue = null;
                if(cookiestart>-1){
                    var cookieend = document.cookie.indexOf(";",cookiestart);
                    if(cookieend == -1){
                        cookieend = document.cookie.lenght;
                    }
                    cookievalue = decodeURIComponent(document.cookie.substring(cookiename.lenght+ cookiestart),cookieend);
                }
            },
            
            set: function(name,value,expries,path,domain,secure){
                var cookieText = encodeURIComponent(name) + "=" +encodeURIComponent(value);
                if(expires instanceof Date){
                    cookieText += ";expires=" + expires.toGMTString();
                }
                
                if(path){
                    cookieText += ";path=" + path;
                }
                
                if(domain){
                    cookieText += ";domain=" + domain;
                }
                
                if(secure){
                    cookieText += ";secure";
                }
                
                document.cookie = cookieText;
            },
            
            unset:function(name,path,domain,secure){
                this.set(name,"",new Date(0),path,domain,secure);
            }
        };
发表于 2016-08-29 10:13:02 回复(1)
方法
发表于 2019-08-11 13:54:29 回复(0)
//添加
function addCookie(sName,sValue,iDay){
    if(iDay){
        var oDate = new Date();
        oDate.setDate(oDate.getDate()+iDay);
        document.cookie=sName+'='+sValue+'; PATH=/; EXPIRES='+oDate.toGMTString();
    }else{
        document.cookie=sName+'='+sValue+'; PATH=/';
    }
}
//获取
function getCookie(sName){
    var arr = document.cookie.split('; ');
    for(var i=0;i<arr.length;i++){
        var arr2 = arr[i].split('=');
        if(arr2[0]==sName){
            return arr2[1];
        }
    }
}
//删除
function removeCookie(sName){
    addCookie(sName,1,-1);
}
编辑于 2015-10-19 22:28:26 回复(0)
// 创建cookie
function setCookie(name, value, expires, path, domain, secure) {
    var cookieText = encodeURIComponent(name) + '=' + encodeURIComponent(value);
    if (expires instanceof Date) {
        cookieText += '; expires=' + expires;
    }
    if (path) {
        cookieText += '; expires=' + expires;
    }
    if (domain) {
        cookieText += '; domain=' + domain;
    }
    if (secure) {
        cookieText += '; secure';
    }
    document.cookie = cookieText;
}
// 获取cookie
function getCookie(name) {
    var cookieName = encodeURIComponent(name) + '=';
    var cookieStart = document.cookie.indexOf(cookieName);
    var cookieValue = null;
    if (cookieStart > -1) {
        var cookieEnd = document.cookie.indexOf(';', cookieStart);
        if (cookieEnd == -1) {
            cookieEnd = document.cookie.length;
        }
        cookieValue = decodeURIComponent(document.cookie.substring(cookieStart + cookieName.length, cookieEnd));
    }
    return cookieValue;
}
// 删除cookie
function unsetCookie(name) {
    document.cookie = name + "= ; expires=" + new Date(0);
}

发表于 2015-07-27 16:21:45 回复(0)