尽量的考量全面点;
_.cookie = function(name, how, val, expiresSec, domain, path, secure) {
/* 取:_.cookie('g'||任意, 'name'); 删:_.cookie('d', 'name' */
if ( (typeof path != 'string') || (path.indexOf('/') != 0)) path = '/';
path = ' path=' + path + ';';
domain = domain ? ' domain=.' + domain.replace(/^\s*\./, '') + ';': '';
secure = secure ? ' secure;' : '';
switch(('' + how).toLowerCase()) {
case 's'://设置
val = encodeURIComponent(val);//注意配合get的decode,且escape php不能正确解码中文
expiresSec = parseInt(expiresSec);
expiresSec = isNaN(expiresSec) ? '' : ' expires=' + new Date(new Date().getTime() + expiresSec * 1000).toGMTString() + ';';
return document.cookie = name + '=' +val+ ';' +path + expiresSec +domain+ secure;
break;
case 'd'://删除
return document.cookie = name + '=0; expires=Fri, 1 Dec 1970 0:0:0 GMT; ' +path +domain+ secure;
break;
default://获取
if ( ('string' != typeof name) || ( (name = name.replace(/\W/g, '')) == '')) return document.cookie;
var re = new RegExp('(?:^|\\W)' + name + "\\=([^\\=;]*)").exec(document.cookie);
return re ? decodeURIComponent(re[1]) : '';//php边使用了urlencode保存编码,必须对应使用
}
}
_.cookie = function(name, how, val, expiresSec, domain, path, secure) {
/* 取:_.cookie('g'||任意, 'name'); 删:_.cookie('d', 'name' */
if ( (typeof path != 'string') || (path.indexOf('/') != 0)) path = '/';
path = ' path=' + path + ';';
domain = domain ? ' domain=.' + domain.replace(/^\s*\./, '') + ';': '';
secure = secure ? ' secure;' : '';
switch(('' + how).toLowerCase()) {
case 's'://设置
val = encodeURIComponent(val);//注意配合get的decode,且escape php不能正确解码中文
expiresSec = parseInt(expiresSec);
expiresSec = isNaN(expiresSec) ? '' : ' expires=' + new Date(new Date().getTime() + expiresSec * 1000).toGMTString() + ';';
return document.cookie = name + '=' +val+ ';' +path + expiresSec +domain+ secure;
break;
case 'd'://删除
return document.cookie = name + '=0; expires=Fri, 1 Dec 1970 0:0:0 GMT; ' +path +domain+ secure;
break;
default://获取
if ( ('string' != typeof name) || ( (name = name.replace(/\W/g, '')) == '')) return document.cookie;
var re = new RegExp('(?:^|\\W)' + name + "\\=([^\\=;]*)").exec(document.cookie);
return re ? decodeURIComponent(re[1]) : '';//php边使用了urlencode保存编码,必须对应使用
}
}