封装cookie方法--设置、读取cookie

我自己写的方法:

var cookie = {
        setCookie:function (name,value,time) {
            document.cookie = name + "=" + value + ";expires=Thu, 18 Dec 2019 12:00:00 GMT";  //分号后面是设定cookie失效时间,如果是过去的时间,则cookie无效,也相当于删除
        },
        getCookie:function(name){
            var cookieStr = document.cookie.replace(/\s+/g,"");  //清楚空格
            var str = cookieStr.split(";");        //将cookie分割成数组
            console.log(typeof str);        //object
            for(var i = 0;i < str.length;i++){
                var newStr = str[i].split("=");
                if(newStr[0] == name){    
                    return newStr[1];
                }
            }
        }
    }
    cookie.setCookie("jian","tianwen");
    cookie.setCookie("name","剑圣");
    console.log(cookie.getCookie("name"))   //xiao
别人封装的:
/*
        封装的cookie方法,可以设置cookie内容和时间
    */
    var cookie = {
        set:function(key,val,time){//设置cookie方法
            var date=new Date(); //获取当前时间
            var expiresDays=time;  //将date设置为n天以后的时间
            date.setTime(date.getTime()+expiresDays*24*3600*1000); //格式化为cookie识别的时间
            document.cookie=key + "=" + escape(val) +";expires="+date.toGMTString();  //设置cookie
        },
        get:function(key){//获取cookie方法
            /*获取cookie参数*/
            var getCookie = document.cookie.replace(/[ ]/g,"");  //获取cookie,并且将获得的cookie格式化,去掉空格字符
            var arrCookie = getCookie.split(";")  //将获得的cookie以"分号"为标识 将cookie保存到arrCookie的数组中
            var tips;  //声明变量tips
            for(var i=0;i<arrCookie.length;i++){   //使用for循环查找cookie中的tips变量
                var arr=arrCookie[i].split("=");   //将单条cookie用"等号"为标识,将单条cookie保存为arr数组
                if(key==arr[0]){  //匹配变量名称,其中arr[0]是指的cookie名称,如果该条变量为tips则执行判断语句中的赋值操作
                    tips=arr[1];   //将cookie的值赋给变量tips
                    break;   //终止for循环遍历
                }
            }
            return unescape(tips);
        }
    }
    cookie.set('key','value,中文也可以的',30)  //30天后失效
    console.log(cookie.get('key'));   // value,中文也可以的)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容