javascript中cookie对象用法实例分析

时间:2022-10-09 23:36:07

本文实例讲述了javascript中cookie对象用法。分享给大家供大家参考。具体如下:

属性

name          唯一必须设置的属性,表示cookie的名称
expires       指定cookie的存活周期,如不设置,浏览器关闭自动失效
path           决定cookie对于服务器对于其他网页的可用性,一般情况下,   cookie对同一目录下的所有页面都可用,当设置path属性后,cookie只对指定路径及子路径下的所有网页有效
domain              许多服务器由多台服务器组成,domain属性主要设置相同域下的多台服务器共享一个cookie,如果web服务器a需要与web服务器b共享cookie,需要把a的cookie的domain属性设置为b,这样a创建的cookie就能被a、b共享
secure               一般支持SSL的网站以HTTPS开头,secure 属性可设置cookie只能通过HTTPS 的或者其他安全协议访问
 
cookie 本质上是字符串
 
一般情况下,cookie不能包含分号、逗号、空格等特殊字符,但是对于这些字符可以使用编码进行传输,也就是将文本字符串中的专用字符转换成对应的十六进制的ASCII值,可使用encodeURI()函数将文本字符转换成有效地URI,使用decodeURI()函数进行解码

写入cookie

?
1
2
3
4
5
6
var cookieTest ="name=userName";
document.cookie= cookieTest; //存入
//用分号分割不同属性
var date = newDate();
date.setDate(date.getDate()+7); //设置cookie的存活时间为一星期
document.cookie= encodeURI("name=user")+";expires="+date.toUTCString();

读取cookie

?
1
2
3
4
5
6
7
var cookieString= decodeURI(document.cookie);
var cookieArray= cookieString.split(";");
for(vari=0;i< cookieArray.length;i++){
  var cookieNum = cookieArray[i].split("=");
  var cookieName = cookieNum[0];
  var cookieValue = cookieNum[1];
}

删除cookie

?
1
2
3
4
var date = newDate();
date.setTime(date.getTime()-10000);
document.cookie= "name=User;expires="+date.toGMTString;
//删除一个cookie就是将其过期时间设置为过去的一个时间值

希望本文所述对大家的javascript程序设计有所帮助。