javascript操作Cookie(设置、读取、删除)方法详解

JavaScript操作Cookie(设置、读取、删除)方法详解

什么是Cookie

Cookie是一种存储在用户浏览器中的小文本文件,它包含网站的服务器发给浏览器的信息,可以用来识别已经访问过该网站的用户。因为Cookie是纯文本格式并且只存储少量信息,所以它们不会对系统性能产生太大影响。

设置Cookie

通过JavaScript可以轻松地设置Cookie。以下是设置Cookie的方法:

document.cookie = "name=value; expires=date; path=path; domain=domain; secure";
  • name:cookie名称
  • value:cookie值
  • expires:cookie的失效时间,以GMT格式的字符串表示。如果未设置失效时间,cookie将在关闭浏览器时自动删除。
  • path:限制目录,指定与cookie关联的Web页面。如果未设置路径,则cookie将适用于所有页面。
  • domain:指定与cookie关联的主机。如果未设置域,cookie将适用于发出cookie请求的主机。
  • secure:指定是否使用HTTPS协议来传输cookie。

以下是一个设置cookie的示例:

document.cookie = "username=John Doe; expires=Thu, 18 Dec 2022 12:00:00 GMT; domain=mydomain.com; path=/; secure";

在此示例中,我们在mydomain.com域名下设置了一个名为username的cookie,它的值为John Doe,并将在指定日期过期。

读取Cookie

读取Cookie的方式非常简单。以下是JavaScript根据cookie名称获取cookie值的方法:

function getCookie(cname) {
  var name = cname + "=";
  var decodeCookie = decodeURIComponent(document.cookie);
  var cookieArray = decodeCookie.split(';');
  for(var i = 0; i < cookieArray.length; i++) {
    var c = cookieArray[i];
    while (c.charAt(0) == ' ') {
      c = c.substring(1);
    }
    if (c.indexOf(name) == 0) {
      return c.substring(name.length, c.length);
    }
  }
  return "";
}

此代码将解密cookie值并将其作为数组返回,以方便检查每个cookie的名称。

以下是一个示例,演示如何使用上述函数读取cookie:

var usernameCookie = getCookie("username");
if (usernameCookie != "") {
  alert("Welcome, " + usernameCookie);
} else {
  alert("Sorry, the cookie is not found!");
}

在此示例中,我们检查名为username的cookie值是否存在。如果存在,我们将欢迎消息和username值显示给用户。

删除Cookie

删除cookie也非常简单。以下是JavaScript删除cookie的方法:

function deleteCookie(name) {
  document.cookie = name +'=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}

此代码将设置cookie的过期时间为过去的一个时间,因此浏览器将删除该cookie。

以下是一个示例,演示如何使用上述函数删除cookie:

deleteCookie('username');

在此示例中,我们删除了名为username的cookie。

结论

本文介绍了JavaScript操作Cookie的三个方法:设置,读取和删除。在您的Web应用程序中使用Cookie,可以保存用户偏好设置,浏览器偏好设置,身份验证信息等用户相关信息以实现可持续化体验。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript操作Cookie(设置、读取、删除)方法详解 - Python技术站

(0)
上一篇 2023年6月11日
下一篇 2023年6月11日

相关文章

  • JS查找孩子节点简单示例

    JS查找孩子节点是在前端开发中常用的操作,可以通过它来查找DOM树中某个节点的直接子节点或者所有子孙节点。以下是JS查找孩子节点的完整攻略: 1. 获取父节点元素 首先需要获取需要查找孩子节点的父元素,可以使用 querySelector 或者 getElementById 等方式获取DOM树中对应的父节点元素。例如: const parentEle = d…

    JavaScript 2023年6月10日
    00
  • JavaScript中的内置对象介绍

    下面是关于JavaScript内置对象的详细介绍: 什么是JavaScript内置对象 JavaScript内置对象指的是在JavaScript语言中可以直接使用的对象,不需要额外的引入或安装。这些内置对象是JavaScript语言的一部分,可以为开发者提供简单、高效的编程方法。 常用的JavaScript内置对象 1.全局对象(Global Object)…

    JavaScript 2023年5月27日
    00
  • JavaScript中定时控制Throttle、Debounce和Immediate详解

    JavaScript中定时控制Throttle、Debounce和Immediate详解 在JavaScript中,定时控制常常用于优化性能或者流程控制。本文将介绍三种常用的定时控制技术:Throttle、Debounce和Immediate,并提供相应的示例说明。 什么是Throttle? Throttle是一种在高频率触发事件时控制函数调用频率的技术。例…

    JavaScript 2023年6月11日
    00
  • JS 在数组插入字符的实现代码(可参考JavaScript splice() 方法)

    下面是详细的攻略: 什么是 splice() 方法 JavaScript 中的 splice() 方法是用来在数组中插入/删除元素的方法。其语法如下: array.splice(start, deleteCount, item1, item2, …) 其中, start:指定插入/删除元素的位置,从 0 开始计数。 deleteCount:可选参数,指定…

    JavaScript 2023年5月27日
    00
  • html5指南-7.geolocation结合google maps开发一个小的应用

    下面是关于“HTML5指南-7.geolocation结合google maps开发一个小的应用”的详细攻略: 一、什么是geolocation? Geolocation是HTML5的一个新特性,它能够让我们通过浏览器获取到用户的地理位置信息,以及海拔高度和速度等信息。 二、如何结合google maps开发应用? 如果想要将geolocation和goog…

    JavaScript 2023年6月11日
    00
  • javaWeb使用验证码实现简单登录

    JavaWeb使用验证码实现简单登录 需求 在JavaWeb网站中,为登录页面增加验证码功能,防止恶意程序暴力破解密码,提高网站的安全性。 技术栈 前端:HTML、JavaScript 后端:Java、Servlet、JSP 实现步骤 1. 引入验证码jar包 可以使用第三方的验证码生成工具库,这里以Google的kaptcha为例。 在pom.xml文件中…

    JavaScript 2023年6月10日
    00
  • JavaScript去除空格的三种方法(正则/传参函数/trim)

    当我们处理用户输入时,常常需要处理输入字符串中的空格。在JavaScript中,有三种常用的方法可以去除字符串中的空格:正则表达式、传参函数和trim方法。 1. 使用正则表达式去除空格 在字符串中,所有空格字符都可以通过正则表达式/\s/g匹配。我们可以使用replace方法来将字符串中的空格字符替换为需要的字符或者直接删除。例如,以下两种方法均可以将字符…

    JavaScript 2023年6月10日
    00
  • jacascript DOM节点——元素节点、属性节点、文本节点

    JavaScript DOM节点是文档对象模型(DOM)中的基本要素之一,它们可以作为网页中的任意元素的表示。DOM节点可以分为三种主要类型:元素节点、属性节点、文本节点。本文将详细讲解这三种节点类型的定义、区别以及使用方法。 元素节点 元素节点是DOM树结构中的基本节点,它表示HTML文档中的元素。可以通过document.getElementByTagN…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部