浅析JS中document.cookie的用法

浅析JS中document.cookie的用法

cookie是保存在客户端的很小的文件,一般只有几KB左右,且安全性极高,也具有缓解服务器压力的特性;

//document.cookie的完整形式:

//document.cookie='user=值;[expires=失效时间;path=设置地址;domain=域名;secure]'   注[]号部分为可选参数

//1.基本形式:

document.cookie='user='+encodeURIComponent('李')  //encodeURIComponent函数可以:将文本字符串编码为一个统一资源标识符 (URI) 的一个有效组件。(就是说:encodeURIComponent 方法返回一个已编码的 URI)

alert(decodeURIComponent(document.cookie));  //decodeURIComponent,那么将返回初始的字符串

//2.设置cookie的时间:

var date=new Date();

date.setDate(date.getDate()+7);

document.cookie='user='+encodeURIComponent('李')+';expires='+date;            //注意分号的位置;

alert(decodeURIComponent(document.cookie));//我们会发现:这个cookie的时间比基础形式延长了七天;

//3.删除cookie:原理将时间调至cookie保存的时间点之前即可:

 //方法1:

var date=new Date();

 date.setDate(date.getDate()-7);

 document.cookie='user='+encodeURIComponent('李')+';expires='+date;

 alert(decodeURIComponent(document.cookie));//我们会发现:这个cookie被手动删除了;

 //方法2:

document.cookie='user='+encodeURIComponent('李')+';expires='+new Date(0);//alert(new Date(0)):时间为1970年;

 alert(decodeURIComponent(document.cookie));//我们会发现:这个cookie被手动删除了;

4.设置path(地址)

//var path='/C:/Users/Administrator/Desktop/%E6%9D%8E%E7%82%8E%E6%81%A2JS/';   //我的cookie原保存的地址;

var path='/C:/Users/Administrator/Desktop/%E6%9D%8E%E7%82%8E%E6%81%A2JS/demo';   //我的cookie现在保存的地址;

document.cookie='user='+encodeURIComponent('李')+';path='+path; 

 alert(decodeURIComponent(document.cookie));//我们会发现:path改变了;

5.设置domain(域名)

//注domain需要在服务器端测试才有效,格式同上:

var domain=*******.com         

 document.cookie='user='+encodeURIComponent('李')+';domain='+domain; 

alert(decodeURIComponent(document.cookie));

//6.secure

 document.cookie='user='+encodeURIComponent('李')+';secure'; 

   alert(decodeURIComponent(document.cookie));   //

 

例子

 

例图:

 

 

 

 

//设置简单cookie
document.cookie='user='+encodeURIComponent('') //encodeURIComponent函数可以:将文本字符串编码为一个统一资源标识符 (URI) 的一个有效组件。(就是说:encodeURIComponent 方法返回一个已编码的 URI
// alert(decodeURIComponent(document.cookie)); //decodeURIComponent,那么将返回初始的字符串

//设置cookie的时间:
var date=new Date();
date.setDate(date.getDate()+7);

document.cookie='user='+encodeURIComponent('')+';expires='+date; //注意分号的位置;

alert(decodeURIComponent(document.cookie));//我们会发现:这个cookie的时间比基础形式延长了七天
posted @ 2021-10-22 14:28  前端白雪  阅读(1440)  评论(0编辑  收藏  举报