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

前端之家收集整理的这篇文章主要介绍了JavaScript设置、获取、清除单值和多值cookie的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

废话不多说了,直接给大家贴代码了。

具体代码如下:

获取单值cookie this.get = function(name) { var start = document.cookie.indexOf(encodeURIComponent(name)) ; var end = document.cookie.indexOf(';',start) ; if(end == -) { end = document.cookie.length; } return decodeURIComponent(document.cookie.substring(start+name.length+,end)); }; // 设置单值cookie this.set = function(name,value,expires,path,domain,secure) { var cookieText = encodeURIComponent(name) + "=" + encodeURIComponent(value); // 设置默认过期时间为七天 if(expires == undefined) { var date = new Date(); date.setTime(date.getTime() + ****); expires = date ; } if(expires instanceof Date) { cookieText += "; expires=" + expires.toGMTString(); } if(path != undefined) { cookieText += "; path=" + path; } if(domain != undefined) { cookieText += "; domain" + domain; } if(secure != undefined) { cookieText += "; secure"; } document.cookie = cookieText; }; // 清除单值cookie this.unset = function(name,secure) { this.set(name,'',new Date(),secure ); }; // 设置多值cookie this.setAll = function(name,subCookies,secure) { var cookieText = ";" + encodeURIComponent(name) + "=",arr = new Array(); for(var attr in subCookies) { arr.push([encodeURIComponent(attr)] + ":" + encodeURIComponent(subCookies[attr])); } this.set(name,arr.join('&'),secure); }; // 获取多值cookie this.getAll = function(name) { var obj = {}; var arr = this.get(name).split('&'); for(var i =,len = arr.length; i < len; i++) { var tmpArr = arr[i].split(':'); obj[decodeURIComponent(tmpArr[])] = decodeURIComponent(tmpArr[]); } return obj; }; // 获取多值cookie的子cookie this.getSub = function(name,subname) { var obj = this.getAll(name); return obj[subname]; }; // 清除指定的多值cookie this.unsetAll = function(name,secure) { this.unset(name,secure); }; // 清除指定多值cookie的子cookie this.unsetSub = function(name,subname,secure) { var obj = this.getAll(name); delete obj[subname]; this.setAll(name,obj,null,secure); }; }; return new Cookie(); })();

以上代码就是本文给大家介绍JavaScript设置、获取、清除单值和多值cookie的方法,有哪里不清楚的地方欢迎给我留言。

原文链接:https://www.f2er.com/js/51676.html

猜你在找的JavaScript相关文章