cookie的原理及作用以及如何设置、读取和删除cookie

cookie:存储数据,当用户访问了某个网站(网页)的时候,我们就通过cookie来向访问者电脑上存储数据

  • 不同的浏览器存放的cookie位置不一样,也是不能通用的。
  • cookie的存储是一域名的形式进行区分的
  • cookie的数据可以设置名字的
  • 一个域名下存放的cookie的个数是有限制的(不同浏览器不一样)

document.cookie= ‘名字 = 值’;写入

document.cookie  读(cookie可读可写)

注意:Chrome限制本地存储  但cookie一般存在服务器中影响不大

我们通过document.cookie来获取当前网站下的cookie的时候,得到的是字符串形式的值,它包含了当前网站下所有的cookie,它会把所有的cookie通过一个分号+空格的形式串联起来。

每个cookie存放的内容大小也是有限制的,不同的浏览器不同,如果想要长时间存放一个cookie,需要设置这个cookie的时候,同时设置一个过期的时间   cookie默认是历史存储的,当浏览器关闭进程的时候自动消失。

document.cookie = '名称 = 值; expires = '+时间;(时间是字符串格式的时间

var oDate = new Date();//获取系统时间
oDate.setDate(oDate.getDate()+5);//根据来访者的时间来设置过期时间
document.cookie = 'username=leo; expires = '+oDate.toGMTString();

注意:oDate为对象时间,所以需要将其转化为字符串时间

把对象转化为字符串  oDate.toGMTString()

内容最好编码存放  :encodeURI();编码    decodeURI(); 解码

例:

document.cookie = 'username='+encodeURI('leo\n你好')+';expries='+oDate.GMTString();  
alert(encodeURI(document.cookie));

如何设置cookie

function setCookie(key,value,t){
   var oDate = new Date();
   oDate.setDate(oDate.getDate()+t);
   document.cookie = key + '='+value+';expries ='+oDate.toUTCString();
}

setCookie('sex','男',10);

如何获取cookie

function getCookie(key){
  var arr1 = document.cookie.split(';');
  for(var i=0; i<arr1.length; i++){
     var arr2 = arr1[i].split('=');
     if(arr2[0]==key){
    return decodeURI(arr2[1]);
}
}
}

alert(getCookie('age'));

如何删除cookie

function  removeCookie(key){
  setCookie(key,'',-1);
}

 

 

 

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值