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