您的位置:首页 > Web前端 > JavaScript

js设置Cookie和取出Cookie

2016-03-31 19:46 441 查看

今天老大交给我一个任务,好高端,用jq往Cookie存值,但是由于是已经成型的项目,又是去更新api,所以我并不打算引入Cookies.js,所以网上找了些原生js的写法,结合了很多大哥的经验,终于写出了一个不报错的而且不乱码的。

例子:

//设置cookie
function setCookie(cookiesStr) 

    var Days = 30; //时间
    var exp = new Date(); 
    exp.setTime(exp.getTime() + Days*24*60*60*1000); 
    f
    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); 



//读取cookie
function getCookie(name) 

    var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
 
    if(arr=document.cookie.match(reg))
 
        return unescape(arr[2]); 
    else 
        return null; 



//删除cookies 
function delCookie(name) 

    var exp = new Date(); 
    exp.setTime(exp.getTime() - 1); 
    var cval=getCookie(name); 
    if(cval!=null) 
        document.cookie= name + "="+cval+";expires="+exp.toGMTString(); 


解决乱码问题:

在 function setCookie 里面 需要做 escape 或者 encodeURIComponent,然后,在 function getCookie 里面,用 unescape 或者 decodeURIComponent 
以上内容均来自网上各位老大,但是已经不知道最初是谁写的了,感谢各位无私帮助小菜比的大侠!
另外,我的是封装的多cookie设置,就不献丑了!


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: