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

news/2024/5/18 15:27:51 标签: cookie, js

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);
}

 

 

 


http://www.niftyadmin.cn/n/952266.html

相关文章

css的一些基础的东西

1. css导入&#xff1a;第一种是把CSS文档放到<head>文档中&#xff1a; <style type“text/css”> …… </style> 其中<style>中的“type‘text/css’”的意思是<style>中的代码是定义样式表单的。第二种方法是把CSS样式表写在HTML的行内&#…

springboot启动过程_你绝对想不到的spring boot中的centre

猿灯塔【全文略长&#xff0c;大家耐心读完哦&#xff01;希望对大家有用&#xff01;】1&#xff0c;spring boot 是什么spring boot 从字面上来理解就是spring 引导。是由Pivotal团队提供的全新框架&#xff0c;其设计目的是用来简化新Spring应用的初始搭建以及开发过程。官网…

利用ajax技术从后端获取数据来制作留言本类瀑布流效果

详细解释请看注释 html代码 <!doctype html> <html lang"en"> <head><meta charset"UTF-8"><title>留言本</title><link rel"stylesheet" href"css.css" type"text/css" /><s…

关于验证控件和javaSript验证的共存问题

以前一直用验证控件来验证输入格式是否正确&#xff0c;感觉用起来还行。后来有了新的需求&#xff0c;就是两个可以填入任意一个就行&#xff0c;比如说固定电话和手机添一个就可&#xff0c;所以就加了段js如下&#xff1a;this.BtnSave.Attributes.Add("onclick",…

string类的erase函数属于stl吗_PoEdu培训第四课-C++之STL

C是由C、object、STL以及泛型等四大块组成的C语言联盟。下面我们就简单的了解以下STL中的string类。我们使用的所有库函数都是编译器帮我们实现的&#xff0c;编译器根据C/C或者其它语言的标准实现相应的库函数。所以有可能导致内个编译器实现的路径不同(版本不同)。在C语言中提…

dom知识点总结

当网页被加载时&#xff0c;浏览器会创建页面的文档对象模型&#xff08;Document Object Model&#xff09;。 Dom:document Object Model&#xff08;文档对象模型&#xff09;简单来说&#xff0c;就是document提供了一些API&#xff08;接口&#xff09;&#xff0c;赋予开…

转载:.NET 2005 实现在线人数统计

前几天有个朋友问起如何在.NET 2005中实现网站在线人数的统计&#xff0c;因为我们用的是C#&#xff0c;记得当时在网上找了好久也没找到适和的方法&#xff0c;最近不是很忙&#xff0c;在网上找了一些资料研究了一下&#xff0c;差不多已经能实现了&#xff0c;现将代码共享一…

python2.7安装教程win10安装不了_Python 2.7的安装(64位win10)

Python 2.7.12 下载地址&#xff1a;https://www.python.org/downloads/安装路径D:\Program Files\Python27 python环境安装比较简单&#xff0c;下载python语言环境中的windows版本的msi格式文件&#xff0c;下载后双击安装即可。 在安装时选择添加路径到系统中&#xff0c;则…