第一种写法
设置cookie
/**
* 设置cookie
* @param name cookie的名称
* @param value cookie的值
* @param day cookie的过期时间
*/
var setCookie = function (name, value, day) {
if(day !== 0){ //当设置的时间等于0时,不设置expires属性,cookie在浏览器关闭后删除(相当于session会话)
var expires = day * 24 * 60 * 60 * 1000;
var date = new Date(+new Date()+expires);
document.cookie = name + "=" + escape(value) + ";expires=" + date.toUTCString();
}else{
document.cookie = name + "=" + escape(value);
}
}
//setCookie('name','xiaoming',0);
获取cookie
/**
* 获取对应名称的cookie
* @param name cookie的名称
* @returns {null} 不存在时,返回null
*/
var getCookie = function (name) {
var arr;
var reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
if (arr = document.cookie.match(reg))
return unescape(arr[2]);
else
return null;
};
//getCookie('name');
删除cookie
/**
* 删除cookie
* @param name cookie的名称
*/
var delCookie = function (name) {
setCookie(name, ' ', -1);
};
//delCookie('name');
第二种写法
// Setting cookies
function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure )
{
var cookie_string = name + "=" + escape ( value );
if (exp_y) //delete_cookie(name)
{
var expires = new Date ( exp_y, exp_m, exp_d );
cookie_string += "; expires=" + expires.toGMTString();
}
if (path) cookie_string += "; path=" + escape ( path );
if (domain) cookie_string += "; domain=" + escape ( domain );
if (secure) cookie_string += "; secure";
document.cookie = cookie_string;
}
// Retrieving cookies
function get_cookie(cookie_name)
{
var results = document.cookie.match(cookie_name + '=(.*?)(;|$)');
if (results) return (unescape(results[1]));
else return null;
}
// Delete cookies
function delete_cookie( cookie_name )
{
var cookie_date = new Date ( ); // current date & time
cookie_date.setTime ( cookie_date.getTime() - 1 );
document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}