zoukankan      html  css  js  c++  java
  • js cookie设置最大过期时间 Infinity

    Note: 对于永久cookie我们用了Fri, 31 Dec 9999 23:59:59 GMT作为过期日。如果你不想使用这个日期,可使用世界末日Tue, 19 Jan 2038 03:14:07 GMT,它是32位带符号整数能表示从1 January 1970 00:00:00 UTC开始的最大秒长(即01111111111111111111111111111111, 是 new Date(0x7fffffff * 1e3)).

     Infinity 过期时间   9999-12-31 是     9999年12月31日; 

    对应 js 操作

    <script>
    
    //cookie 
    function addCookie(objName,objValue,objDays){
    var str = objName + "=" + escape(objValue);
    console.log(Infinity);   //Infinity
    console.log(typeof Infinity);   //number
    console.log(Infinity.constructor); //function Number() { [native code] }
    if(objDays > 0){
    var date = new Date();
    var ms = objDays*24*3600*1000;
    date.setTime(date.getTime() + ms);
    str += "; expires=" + date.toGMTString();
    }
    if(objDays===Infinity){
      str += "; expires=Fri, 31 Dec 9999 23:59:59 GMT";
    }
    
    str += "; path=/";
    document.cookie = str;
    };
    
    
    
     var itemtitle=document.querySelector(".item-title");
     document.querySelector(".sava_cookie").addEventListener("click",function(e){
    	   var putCookieVal=itemtitle.innerHTML;
    	   addCookie('surface',putCookieVal,Infinity);
    	 
     });
      
    
    </script>
    

    我们设置3个cookie ,看下浏览器的记录; 

    上面三条cookie记录  现在是2016年6月

    seseion:cookieMaxAge          过期时间 浏览器会话期间      

    hunred-day:cookieMaxAge   过期时间2016年9月11日    固定的一个时间

    surface:cookieMaxAge         过期时间9999年12月31日   最大值

      addCookie('surface','cookieMaxAge',Infinity);
      addCookie('hunred-day','cookieMaxAge',100);
      addCookie('Session','cookieMaxAge');

    第三条  如果不设置expires或者max-age这个cookie默认是Session的,也就是关闭浏览器该cookie就消失了。

    备注:

    Note: 对于永久cookie我们用了Fri, 31 Dec 9999 23:59:59 GMT作为过期日。如果你不想使用这个日期,可使用世界末日Tue, 19 Jan 2038 03:14:07 GMT,它是32位带符号整数能表示从1 January 1970 00:00:00 UTC开始的最大秒长(即01111111111111111111111111111111, 是 new Date(0x7fffffff * 1e3)).

    参开网站

    https://developer.mozilla.org/zh-CN/docs/Web/API/Document/cookie

  • 相关阅读:
    MongoDB 基础学习
    在 PostgreSQL 中使用码农很忙 IP 地址数据库
    在 MySQL 中使用码农很忙 IP 地址数据库
    编译opencv和opencv_contrib
    修改本次提交日志
    clone报告超过限制
    修改gitolite管理员
    libevent简介[翻译]11 连接监听:接收一个TCP连接
    libevent简介[翻译]11 Evbuffers:缓冲IO的功能函数
    Windows查看TCP连接数
  • 原文地址:https://www.cnblogs.com/surfaces/p/5548999.html
Copyright © 2011-2022 走看看