javascript针对cookie的基本操作实例详解_javascript技巧
js被C#、JAVA等开发者视为声名狼藉的附属编程语言是有道理的,比如说,对cookie的操作。js就没有一套类似C#的现成处理方案,而只能由你自己去完成。下面我就将自己学习的用面向对象的思想对cookie进行处理的学习笔记整理一下,以飨读者。
cookie的常见操作分析:
(1)设置cookie 包括了添加和修改功能,事实上如果原有cookie 名称已经存在,那么添加此cookie 就相当于修改了此cookie。在设置cookie 的时候可能还会有一些可选项,用于指cookie 的声明周期、访问路径以及访问域和安全性等等。为了让cookie 中能够存储中文,该方法中还需要对存储的值进行编码。
(2)取一个cookie的值,该方法接收cookie 名称为参数,返回该cookie 的值。因为在存储该值的时候已经进行了编码,所以取值时应该能自动解码,然后返回(这里其实可以自己设置返回什么,而不单单是"取一个值"而已)。
(3)删除一个cookie,删除cookie 只需将一个cookie 的过期事件设置为过去的一个时间即可,它接收一个cookie 的名称为参数,从而删除此cookie(我的实现还将cookie名称设置为空,这是考虑到今后可能会有多个cookie要设置的时候,名称发生冲突的情况)。
(4)其他 (这里让读者自己去考虑其他的操作,不赘述了。)
好的,你一定又猜到我要说什么了,对头,code is cheap.看代码:
/* 对cookie的操作 */ //创建 var Cookie = new Object(); //设置(修改)属性和方法 Cookie.setCookie = function(sName, sValue, oExpires, sPath, sDomain, bSecure) { var sCookie = sName + "=" + escape(sValue); // 名称和值 if (oExpires) { sCookie += "; expires=" + oExpires.toGMTString(); // 过期时间 } if (sPath) { sCookie += "; path=" + sPath; // 访问路径 } if (sDomain) { sCookie += "; domain=" + sDomain; // 访问路径 } if (bSecure) { sCookie += "; true"; // 安全性 } document.cookie = sCookie; } //获取 Cookie.getCookie = function(sName) { var cookieArray = document.cookie.split(";"); //得到分割的名值对 var tempCookie = new Object(); for (var i = 0; i
补充:javascript 操作cookie类
String.prototype.Trim = function() { return this.replace(/^\s+/g,"").replace(/\s+$/g,""); } function JSCookie() { this.GetCookie = function(key) { var cookie = document.cookie; var cookieArray = cookie.split(';'); var getvalue = ""; for(var i = 0;i
用法:
一、设置cookie
var cookie = new JSCookie(); //普通设置 cookie .SetCookie("key1","val1"); //过期时间为一年 var expire_time = new Date(); expire_time.setFullYear(expire_time.getFullYear() + 1); cookie .SetCookie("key2","val2",expire_time); //设置域及路径,带过期时间 cookie .SetCookie("key3","val3",expire_time,".cnblogs.com","/"); //设置带子键的cookie,子键分别是k1,k2,k3 cookie .SetCookie("key4","k1=1&k2=2&k3=3");
二、读取cookie
//简单获取 cookie .GetCookie("key1"); cookie .GetCookie("key2"); cookie .GetCookie("key3"); cookie .GetCookie("key4"); //获取key4的子键k1值 cookie .GetChild("key4","k1");
三、删除
cookie .Expire("key1"); cookie .Expire("key2"); cookie .Expire("key3"); cookie .Expire("key4");
希望本文所述对大家JavaScript程序设计有所帮助。
上一篇: mysql unsigned 用法及相减出现补数溢出解决方法
下一篇: js如何获取鼠标当前位置实例
推荐阅读
-
Javascript 对cookie操作详解及实例
-
ES6 javascript的异步操作实例详解
-
javascript cookie的基本操作(添加和删除)
-
详解JavaScript操作HTML DOM的基本方式
-
javascript操作cookie的文章(设置,删除cookies)_javascript技巧
-
一个JavaScript操作元素定位元素的实例_javascript技巧
-
javascript操作cookie的文章(设置,删除cookies)_javascript技巧
-
javascript与cookie 的问题详解_javascript技巧
-
详解PHP如何读取由JavaScript设置的Cookie的实例
-
jQuery.extend()的实现方式详解及实例_javascript技巧