js读写cookie

2016-02-25 / 5 阅读 / JS

cookie是存放在客户端的数据,之前设置cookie都是在服务器完成。现在写日志因为是静态网页,所以不能在服务器完成。所以现在读写cookie的工作全部由javascript来做,因此花了一点时间来了解了以下javascript中读写cookie的方法。

1. 首先了解下cookie的构成:

  • cookieName
    首先cookie存放方式key-value,这边便是key

  • cookieValue
    这边是value

  • expires
    该cookie过期时间,可以不设,默认当前会话结束过期。
    例如下面设置为30天后过期。

    var now=new Date();
    now.setTime(now.getTime()+30*24*60*60*1000)
    expires="+now.toUTCString();
    (网上很多使用toGMTString(),不过现在推荐使用toUTCString()代替)

  • path
    路径,可以不设,默认当前路径。不过要是跟路径下共享则应该设为 /

  • domain
    域名,可以不设,默认当前访问域名

设置时只需要以上拼接成字符窜

var ck  = "cookieName=cookieValue;expires=expiresDate;path=/;domain=siteDomain"
document.cookie = ck;

运行以上js代码,即可在对应域名看到cookie信息。

2.获取cookie

 //获取所有cookie            
 var ck = document.cookie.split(";");
 for (var i in ck){
    if(ck[i].split("=")[0] == "cookieName"){
        return ck[i].split("=")[1]
    }
 }
注:想要从cookie获取其他信息,如某个cookie的过期时间是没办法的,document.cookie是获取不到的,这些全部由游览器来控制。
相关推荐