WEB开发网
开发学院网页设计JavaScript JavaScript Cookie操作 笔记 阅读

JavaScript Cookie操作 笔记

 2008-08-13 19:57:33 来源:WEB开发网   
核心提示:expires 生存期 默认:会话期间存在(用户关闭浏览器后,cookie值被销毁) 其他:日期格式规范为GMT(或UCT)"Weekday, DD-Mon-YYYY HH:MM:SS GMT" 解决方法是使用Date对象,JavaScript Cookie操作 笔记,path 可访问的路径 默认:

expires 生存期
 

默认:会话期间存在(用户关闭浏览器后,cookie值被销毁)

其他:日期格式规范为GMT(或UCT)"Weekday, DD-Mon-YYYY HH:MM:SS GMT" 解决方法是使用Date对象。

path 可访问的路径
 

默认:创建该cookie值的网页路径(cookie只能被同在当前目录中的其他页面,或者当前目录的子目录中的页面访问)

其他:可以将path设置为“/”以使整个服务器域都可访问这个cookie成员

domain 可访问域
 

默认:当前域

其他:不同子域间将不能相互访问

secure 安全性(指定了在网络上传输cookie值的方式)
 

默认:false

其他:false - 普通的、不安全的http连接;true - https或其他安全协议

日期格式获取实例
 

var nextyear = new Date();
nextyear.setFullYear(nextyear.getFullYear() + 1);
expiretime = nextyear.toGMTString();
 

一个简单的封装实现
 

function Cookie() {}

Cookie.get = function(name, value, expireTime) {
   if(!expireTime)
     expireTime =new Date();
   document.cookie = name + "=" + value + ";" + "expire=" + expireTime.toGMTString();
};

Cookie.set = function(name) {
   var cookies = document.cookie.split("; ");
   for (var i = 0; i < cookies.length; i++) {
     var s = cookies[i].split("=");
     if(s[0] == name)
       return s[1];
   }
}
 

其他笔记
 

cookie是一个单例对象。

cookie值不能含有分号、逗号或空白符,当有这些特殊字符出现时,可以用javaScript提供的escape函数先对它进行编码(unescape解码)。

浏览器保存的cookie总数不能超过300个(注意cookie是单例),为每个Web服务器保存的cookie数不能超过20个(突破20:面包屑技术,通常使用冒号作为子cookie分割符),每个cookie保存的数据不能超过4KB(解决方法:另一种稍微强的脚本化数据存储机制-userData)

Tags:JavaScript Cookie 操作

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接