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删除是直接删除的那种,看了代码发现是通过设置时间来实现的。