您的位置:首页 > Web前端 > JavaScript

javascript之cookie对象

2014-12-08 11:40 323 查看

属性

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

[javascript]
view plaincopyprint?





var cookieTest ="name=userName";

document.cookie= cookieTest; //存入

//用分号分割不同属性
var date = newDate();
date.setDate(date.getDate()+7); //设置cookie的存活时间为一星期

document.cookie= encodeURI("name=user")+";expires="+date.toUTCString();

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

[javascript]
view plaincopyprint?





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];

}

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

[javascript]
view plaincopyprint?





var date = newDate();

date.setTime(date.getTime()-10000);
document.cookie= "name=User;expires="+date.toGMTString;

//删除一个cookie就是将其过期时间设置为过去的一个时间值
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: