首页 > 网站 > WEB开发 > 正文

JS读写Cookie(设置、读取、删除)

2024-04-27 14:11:55
字体:
来源:转载
供稿:网友

JS读写Cookie(设置、读取、删除)

Cookie是客户端存放数据的一种方式,可用来做状态保持。

1.设置Cookie:

a.无过期时间:(若不设置过期时间,默认为会话级Cookie,浏览器关闭就会失效)

function setCookie(name,value) {    document.cookie = name + '=' + escape(value);}

b.固定过期时间:

function setCookie(name,value){    var Days = 30;    var exp = new Date();    exp.setTime(exp.getTime() + Days*24*60*60*1000);    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();} 

c.自定义过期时间:

//设置自定义过期时间cookiefunction setCookie(name,value,time){    var msec = getMsec(time); //获取毫秒    var exp = new Date();    exp.setTime(exp.getTime() + msec*1);    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();}//将字符串时间转换为毫秒,1秒=1000毫秒function getMsec(DateStr){   var timeNum=str.substring(0,str.length-1)*1; //时间数量   var timeStr=str.substring(str.length-1,str.length); //时间单位前缀,如h表示小时      if (timeStr=="s") //20s表示20秒   {        return timeNum*1000;   }   else if (timeStr=="h") //12h表示12小时   {       return timeNum*60*60*1000;   }   else if (timeStr=="d")   {       return timeNum*24*60*60*1000; //30d表示30天   }}

2.读取Cookie:

function getCookie(name){    var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); //正则匹配    if(arr=document.cookie.match(reg)){      return unescape(arr[2]);    }    else{     return null;    }} 

3.删除Cookie:

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();    }} 

4.调用示例:

setCookie("name","hayden");alert(getCookie("name")); 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表