使用JS函数操作COOKIE

网页中,通常使用COOKIE来辨别用户身份、进行session跟踪,而且一般是以加密的形式储存在用户本地终端。

一般使用动态脚本程序来设置COOKIE,比如PHP,但是如何用JS来设置COOKIE,这里分享几个JS操作COOKIE的函数。

/** 获取COOKIE */
function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg) return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0) break;
}
return null;
}
/** 设置COOKIE */
function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value)
+ ((expires == null) ? "" : ("; expires=" + expires.toGMTString()))
+ ((path == null) ? "" : ("; path=" + path))
+ ((domain == null) ? "" : ("; domain=" + domain))
+ ((secure == true) ? "; secure" : "");
}
/** 删除COOKIE */
function DeleteCookie (name) {
var exp = new Date();
exp.setTime (exp.getTime() - 1);
var cval = 0;
document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}
function getCookieVal(offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}

这里主要用到三个函数,即:GetCookie、SetCookie、DeleteCookie,最后的getCookieVal是在GetCookie中调用的一个子函数。

1、GetCookie(name)

获取COOKIE值,参数name即COOKIE名称。

2、SetCookie(name, value)

设置COOKIE值,设置name的COOKIE值。

3、DeleteCookie (name)

删除name的COOKIE值。

打赏此文

如果您觉得本站的内容对您有所帮助,您可以扫描下面的二维码小额支付请我喝杯茶,感谢!打赏记录
支付宝
微信
承诺:凡打赏捐助的朋友,留言备注自己的邮箱,在打赏捐助时间点的6个月内,本站会每周邮件推送原创专业技术博文,供大家学习和参考!

留下评论

All fields marked (*) are required