javascript操作Cookie(设置、读取、删除)方法详解
来源: 阅读:841 次 日期:2015-03-19 14:38:09
温馨提示: 小编为您整理了“javascript操作Cookie(设置、读取、删除)方法详解”,方便广大网友查阅!

这篇文章主要详细向大家介绍了javascript操作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.自定义过期时间:

代码如下:

//设置自定义过期时间cookie

function 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"));

以上就是本文关于javascript操作cookie的全部内容了,希望能够对大家学习javascript有所帮助。

更多信息请查看IT技术专栏

更多信息请查看脚本栏目
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map