分享JavaScript创建、设置、保存和删除cookie的函数
在JavaScript中,可以使用`document.cookie`属性来创建、设置、保存和删除cookie。以下是一些常用的函数: 1. 创建cookie:`function createCookie(name, value, days) { var expires = ""; if (days) { var date = new Date(); date.setTime(date.getTime() + (days*24*60*60*1000)); expires = "; expires=" + date.toUTCString(); } document.cookie = name + "=" + (value || "") + expires + "; path=/"; }` 2. 设置cookie:`function setCookie(name, value, days) { createCookie(name, value, days); }` 3. 保存cookie:`function saveCookie(name, value, days) { setCookie(name, value, days); }`
设置Cookie:
functionsetCookie(name,value){varDays=30;varexp=newDate();exp.setTime(exp.getTime()+Days2460601000);document.cookie=name+“=”+escape(value)+“;expires=”+exp.toGMTString();}
读取cookie:
functiongetCookie(name){vararr,reg=newRegExp("(^|)"+name+"=([^;]*)(;|$)");if(arr=document.cookie.match(reg)){returnunescape(arr[2]);}else{returnnull;}}
删除cookie:
cookie没有提供删除cookie的方法,我们可以设置cookie的参数manAge=0让cookie过期,来达到删除cookie的效果。
functiondelCookie(name){varexp=newDate();exp.setTime(exp.getTime()-1);varcval=getCookie(name);if(cval!=null)document.cookie=name+“=”+cval+";expires="+exp.toGMTString();}
使用示例:
setCookie(“name”,“hayden”);alert(getCookie(“name”));
如果需要设定自定义过期时间
那么把上面的setCookie 函数换成下面两个函数就ok;
functionsetCookie(name,value,time){varstrsec=getsec(time);varexp=newDate();exp.setTime(exp.getTime()+strsec1);document.cookie=name+“=”+escape(value)+“;expires=”+exp.toGMTString();}functiongetsec(str){alert(str);varstr1=str.substring(1,str.length)1;varstr2=str.substring(0,1);if(str2==“s”){returnstr11000;}elseif(str2==“h”){returnstr160601000;}elseif(str2==“d”){returnstr12460601000;}}
s20是代表20秒
h是指小时,如12小时则是:h12
d是天数,30天则:d30
setCookie(“name”,“hayden”,“s20”);