cookie的设置和获取

1.Cookie设置

每个cookie都是一个名/值对(key=value)格式的字符串 例如: document.cookie="user1=YY";

如果要改变一个cookie的值,只需重新赋值

例如: document.cookie="user1=QQ";

封装获取cookie的函数

function setCookie(user,value,day){
  var dates=new Date();
  dates.setDate(dates.getDate()+day);
  document.cookie=user+‘=‘+value+‘; expires=‘+day;
}
setCookie(‘user1‘,‘小明‘,3);

这种情况下用以上代码没有问题,但是若是设置的value有特殊字符,那么保存的值可能是不确定的。就用到cookie编码来处理

cookie值编码处理

在cookie 的名或值中不能使用分号(;)、逗号(,)、 等号(=)以及空格等特殊符号。在cookie的名中做到这点很容易,但要保存的值可能是不确定的。

用escape( )函数进行编码,它能将一些特殊符号使用十六进制表示,从而可以存储于cookie值中

当使用escape( )编码后,在取出值以后需要使用unescape( )进行解码才能得到原来的cookie值。

function setCookie(key,val,Days){//设置cookie
  var dates=new Date();//当前时间对象
  dates.setDate(dates.getDate()+Days);//设置有效期
  document.cookie=key+‘=‘+escape(val)+‘; expires=‘+dates;
}

setCookie(‘user5‘,‘马;56,4?5=3六‘,7);

2,获取cookie

ar cookies=document.cookie; //获取

alert(cookies);

返回:"user1=YY; user2=MM"

只能够一次获取所有的cookie值

用户必须自己解析这个字符串,来获取指定的cookie值

split() 方法用于把一个字符串分割成字符串数组

function getCookie(key){
  var arr=document.cookie.split(‘; ‘);
  for (var i = 0; i < arr.length; i++) {
    var arr2=arr[i].split(‘=‘);//[user1,张三]
    if (arr2[0]==key) {
      return unescape(arr2[1]);
    };
  };
  return false;//没有则返回false
}

3.删除cookie

cookie过期会自动消失

要删除一个cookie,可将其有效期设为一个过去的时间

function rmCookie(key){
  setCookie(key,‘abc‘,-1);
}

时间: 2024-10-13 00:48:56

cookie的设置和获取的相关文章

cookie的设置、获取以及删除

首先介绍一下cookie的基本信息: cookie是以域为单位的,它必须放在服务器的的环境下,但是cookie的容量小,只有4kb,并且也不安全,还有入股cookie的名字相同,会修改或者覆盖原来的值,如果名字不同,会添加一条cookie: 接下来再和大家说一声关于获取cookie: 获取到cookie的格式都是字符串: 父级种下的cookie,子级可以获取到:子级种下的cookie,父级获取不到: 还有就是cookie的path:可以设置,一般都是设置到 '/' 根目录下: 好了,下面就是我封

封装cookie的设置和获取

cookie的设置 function setCookie(key,value,options){ options=options||{}; var time=""; if(options.expires){ var d=new Date(); d.setDate(d.getDate()+options.expires); time=“:expires=”+d; { var path=""; if(options.path){ path=";path=&qu

Cookie 的设置和获取

获取:var userName = getCookieValue("userName"); 设置:setCookie("userName",equpid,24,"/"); //hours为空字符串时,cookie的生存期至浏览器会话结束.hours为数字0时,建立的是一个失效的cookie,这个cookie会覆盖已经建立过的同名.同path的cookie(如果这个cookie存在). function setCookie(name,value,h

cookie的设置、获取和删除封装

在我们为了去完成数据储存,有时会用到cookie,简单封装一下cookie: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <script type="text/javascript">

Cookie的设置与获取

ThinkPHP源码学习 cookie函数 设置 取值 删除

/** * Cookie 设置.获取.删除 * @param string $name cookie名称 * @param mixed $value cookie值 * @param mixed $option cookie参数 * @return mixed */ 系统内置了一个cookie函数用于支持和简化Cookie的相关操作,该函数可以完成Cookie的设置.获取.删除操作. Cookie设置 cookie('author','津沙港湾','3600'); 执行代码段 $expire =

自己编写的一个Cookie设置与获取函数

自己编写的一个Cookie设置与获取函数,大家有什么感觉需要改进的地方,请告知与我,我一定虚心接受. Code: 1 function setCookie(name,value,time){ 2 if(name){ 3 var date = new Date(); 4 if(time){ 5 var lastword = time.slice(-1); 6 switch(lastword){ 7 case 'd' : date.setDate(date.getDate()+parseInt(ti

js中的cookie的设置获取和检查

设置cookiefunction setCookie(cname,cvalue,exdays) { var d = new Date(); d.setTime(d.getTime()+(exdays*24*60*60*1000)); var expires = "expires="+d.toGMTString(); ocument.cookie = cname + "=" + cvalue + "; " + expires; } 获取cookie

javascript设置和获取cookie的方法

设置cookie的方法,和获取cookie的方法如下 设置cookie document.cookie="name="+value; //获取cookie其中index是cookie的名称 function getCookie(index){ var allcookies = document.cookie; var cookie_pos = allcookies.indexOf(index); if (cookie_pos != -1){ cookie_pos += index.le