设置、获取和清除单个和多值cookie的Javascript方法

废话不多说,直接给人们贴代码。

具体代码如下:


Var CookieUtil =(函数(){()
Var Cookie =函数(){()
获取单值cookie
this.get =函数(名){
VaR的开始= document.cookie.indexof(encodeURIComponent(名字));
var = document.cookie.indexof(';',开始);
如果(结束= { - {)
结束= document.cookie.length;
}
返回decodeuricomponent(document.cookie.substring(开始+姓名。长度+端));
};
设置单值cookie
this.set =函数(名称,价值,到期,路径,域安全){
无功cookietext = encodeURIComponent(名称)+=+ encodeURIComponent(价值);
设置默认过期时间为七天。
如果(过期=未定义){
日期=新日期();
Date.setTime(date.gettime()* * * *);
过期日期;
}
如果(到期是日期){
cookietext =到期= +(到期。togmtstring);;
}
如果(路径)!=未定义的){
cookietext =路径= +路径;;
}
如果(域)!=未定义的){
cookietext =域名+域;;
}
如果(安全)!=未定义的){
cookietext =安全;;
}
cookietext document.cookie =;
};
删除/单值cookie
this.unset =函数(名称、路径、领域、安全){
This.set(名字,,新的日期()、路径、领域、安全);
};
设置多值cookie
this.setall =函数(名称、subcookies,到期,路径,域安全){
无功cookietext =;+ encodeURIComponent(名称)+=
ARR =新的数组();
对于(在subcookies var attr){
Arr.push({ encodeURIComponent(ATTR)} +:+ encodeURIComponent(subcookies {属性}));
}
This.set(名字,arr.join('),到期后,路域、安全);
};
获取多值cookie
this.getall =函数(名){
var obj = { };
var arr = this.get(的名字),Split(' ');
对于(var i =,len = arr.length;我< len;i++){
无功tmparr = ARR {我}。分裂(':');
obj { decodeuricomponent(tmparr { })} = decodeuricomponent(tmparr { });
}
返回对象;
};
获取多值cookie cookie
this.getsub =函数(名称、子名字){
var obj = this.getall(名称);
返回obj {子名字};
};
删除指定的值
this.unsetall =函数(名称、路径、领域、安全){
This.unset(名字,,新的日期()、路径、领域、安全);
};
删除指定的多值cookie cookie
this.unsetsub =函数(名称、子名字、路径、领域、安全){
var obj = this.getall(名称);
删除obj {子名字};
This.setAll(名字,obj,null,路径,域,安全);
};
};
返回新cookie();
});


以上代码介绍了为Javascript设置、获取和清除单个值和多值cookie的方法,目前还不清楚,请给我留言。