cookie的添加、获取、删除代码

下面这段代码最开始是参考腾讯的,自经过调整加工及添加注释后贴出来,希望对大家有所帮助。

在注释中的解释应该已经很详细了,如遇到问题可以在评论中咨询。

 

 // cookie 2.0  F7 Editor
function setCookie(name, value, expires, path, domain){
//name cookie的名称
//value cookie的值
//expires cookie存活的时间[可选项:无值代表页面关闭生命到期],以毫秒为单位 支持 ’1000′  1000  100*1000 三种格式(计算时不能用引号包含)[可以为其他目录进行赋值]
//path cookie的可访问范围,例设置为"/test/"或"text/"或"/text" 都代表test目录下的所有文件及子目录都可访问到cookie
//domain cookie的访问域,path的延伸,如设置为 "web600.net" 那么"bbs.web600.net"/"www.web600.net"等二级子域名都可以访问到该cookie[只能为自己域赋值]
//完整引用实例:
//添加:setCookie(‘userName’,'qqqqqq’,1000*60,’/test/’,'imf7.com’)
//读取:getCookie(‘userName’)
//删除:clearCookie(‘userName’)
  if( expires && isNaN(expires)===false ){expires=new Date(new Date().getTime()+expires)};
  document.cookie=name+"="+escape(value)+((expires)?"; expires="+expires.toGMTString():"")+((path)?"; path="+path:"; path=/")+((domain)?";domain="+domain:"");
};
function getCookie(name){
  var arr=document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
  if(arr!=null){
    return unescape( arr[2] );
  }
    return null;
};
function clearCookie(name, path, domain){
  if(this.get( name )){
    document.cookie=name+"="+((path)?"; path="+path:"; path=/")+((domain)?"; domain="+domain:"")+";expires=Fri, 02-Jan-1970 00:00:00 GMT";
  }
};

 

自己曾在很多的项目中用到,还是非常好用的。

原文:http://www.imf7.com/archives/130

Tags:

Comments are closed.