JavaScript操作Cookie 插件

来源:互联网 发布:宾得镜头 知乎 编辑:程序博客网 时间:2024/05/02 01:33

JavaScript操作Cookie 插件,标注已经很清楚了,请看具体代码:

 

//Cookie类function Cookie(){Cookie.prototype=new Object();//继承自Objectthis.constructor=Cookie;//重写toString函数,生成为document.cookie形式的字符串Cookie.prototype.toString=function(){var data=[];//存放cookie子键var _cookie=[];//存放cookie键值对for(var prop in this){switch(true){case prop=="name":_cookie[0]=prop;continue;case prop=="expires":_cookie[1]=prop+"="+this[prop];continue;case prop=="path":_cookie[2]=prop+"="+this[prop];continue;case prop=="secure":_cookie[3]=prop+"="+this[prop];continue;case prop=="domain":_cookie[4]=prop+"="+this[prop];continue;}data[data.length]=prop+":"+escape(this[prop]);}_cookie[0]+="="+data.join("&");return _cookie.join(";");};return this;//返回cookie对象}//将字符串格式化为cookie, 静态函数Cookie.format=function(str){var cookie=new Cookie();var start=str.indexOf("=");cookie.name=str.substring(0,start);var value=str.substring(start+1);value=value.split('&');for ( var v in value ){v=v.split(':');this[v[0]]=unescape(v[1]);}return cookie;};//获取当前所有cookie, 静态对象Cookie.cookies=(function(){var cookie=document.cookie;var obj;cookie=cookie.split(';');for (var c in cookie){c=Cookie.format(c);obj[c.name]=c;}return obj;})();//添加cookie, 静态函数Cookie.Add=function(cookie){if(cookie instanceof Cookie){document.cookie=cookie.toString();}//else console.log("参数错误");}//删除cookie, 静态函数Cookie.Remove=function(cookie){if(cookie instanceof Cookie){var time=new Data();time.setFullYear(time.getFullYear()-10);cookie.expires=time.toGMTString();document.cookie=cookie.toString();}}

原创粉丝点击