JavaScript之cookie

时间:2024-04-20 13:07:21

JavaScript通过Cookie实现简单的用户登录状态的保存。Cookie可以跨越多个网页使用,但不能跨域名使用,也不同跨浏览器使用。

1.设置cookie

   function SetCookie(name, value)//两个参数,一个是cookie的名子,一个是值
{
var Days = 30; //此 cookie 将被保存 30 天
var exp = new Date(); //new Date("December 31, 9998");
exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
}

设置Cookie

cookie是一对键值对,所以调用该方法的时候  只需要传递键名和键值。若果需要创建多个cookie,可以多次调用。

2.获取cookie

  function getCookie(name)//取cookies函数
{
var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
if (arr != null) return unescape(arr[2]); return null; }

获取cookie

这里通过正则表达式对cookie进行分析,获取指定的cookie值。

3.删除cookie

  function delCookie(name)//删除cookie
{
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval = getCookie(name);
if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
}

删除cookie

原以为cookie删除是直接删除的那种,看了代码发现是通过设置时间来实现的。