js中的cookie的读写操作示例详解

yizhihongxing

有关 JavaScript 中的 Cookie 读写操作,通常需要通过 document.cookie 属性进行实现。下面是关于如何读写 Cookie 的示例及详细攻略。

读取 Cookie 值

通过 document.cookie 属性可以访问 Cookie 值。Cookie 格式通常为 name=value,使用分号(;)将多个 Cookie 分隔开,每个分号后面还可能有空格。以下是读取 Cookie 值的代码示例:

function getCookie(name) {
  const cookieString = decodeURIComponent(document.cookie);
  const cookies = cookieString.split(';');
  for (let i = 0; i < cookies.length; i++) {
    const cookie = cookies[i].trim();
    if (cookie.startsWith(`${name}=`)) {
      return cookie.substring(name.length + 1);
    }
  }
  return null;
}

以上代码中,首先使用 decodeURIComponent 函数对 document.cookie 进行解码。然后,使用 split 函数将多个 Cookie 值分割成一个数组。接着,使用 for 循环遍历数组中的每个元素,并使用 startsWith 函数判断是否为要查找的 Cookie,如果是,则使用 substring 函数提取出 Cookie 值并返回。

写入 Cookie 值

写入 Cookie 值通常需要指定 name、value 和过期时间等参数。以下是写入 Cookie 值的代码示例:

function setCookie(name, value, days) {
  const d = new Date();
  d.setTime(d.getTime() + (days * 24 * 60 * 60 * 1000));
  const expires = `expires=${d.toUTCString()}`;
  document.cookie = `${name}=${encodeURIComponent(value)};${expires};path=/`;
}

以上代码中,首先使用 Date 函数获取当前时间,并将过期时间计算为设定的天数之后。然后,使用 toUTCString 函数将时间转换为 UTC 格式的字符串,作为 expires 参数的值。接着,使用 encodeURIComponent 函数对 value 进行编码,防止其中包含特殊字符(如分号等)。最后,使用 document.cookie 属性将 Cookie 值写入浏览器中。

示例说明:

  1. 读取 Cookie:
const name = getCookie('username');
console.log(name);

以上代码将输出名为 'username' 的 Cookie 值。
2. 写入 Cookie:

setCookie('username', 'hello', 3);

以上代码将写入一个名为 'username',值为 'hello',过期时间为 3 天的 Cookie 值。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js中的cookie的读写操作示例详解 - Python技术站

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

相关文章

  • 解析php防止form重复提交的方法

    下面是解析PHP防止form重复提交的方法的完整攻略: 什么是防止form重复提交? 表单重复提交的情况在Web应用程序中很常见,这可能会导致应用程序的各种问题,例如重复表单提交对数据库的写入,导致数据重复或错误。这是一种不良的用户体验,可能会使用户失去对应用程序的信任感。为了避免这种情况,开发人员已经产生了一些技术来防止表单重复提交,这是Web应用程序设计…

    JavaScript 2023年6月11日
    00
  • js控制div弹出层实现方法

    “JS控制div弹出层实现方法”有很多种方法,以下是其中一种比较常见的方法: 1. 首先创建一个html文件,并添加CSS样式 CSS样式的作用是设置弹出层的样式和位置,实现以上功能: .popup { display: none; position: fixed; top: 50%; left: 50%; transform: translate(-50%…

    JavaScript 2023年6月11日
    00
  • js将json格式内容转换成对象的方法

    当我们从后端接受到数据时,很多时候这些数据是以JSON格式的字符串呈现的,但是如果我们要操作这些数据,就需要将其转换成JavaScript的对象来进行操作。下面是将JSON格式内容转换成对象的方法的完整攻略: 1. 使用JSON.parse()方法 JSON.parse()方法可以将JSON格式的字符串转换为JavaScript的对象,其语法如下: let …

    JavaScript 2023年5月27日
    00
  • JavaScript 实现拖拽效果组件功能(兼容移动端)

    下面是详细讲解“JavaScript 实现拖拽效果组件功能(兼容移动端)”的完整攻略: 一、需求分析 首先分析一下需求,要实现的功能是实现一个拖拽效果组件,用户可以通过拖拽元素来改变元素的位置。由于需要兼容移动端,所以要考虑触摸事件的处理。 二、实现思路 实现拖拽效果组件可以使用鼠标事件或触摸事件,以下是相关的事件: 鼠标事件:mousedown、mouse…

    JavaScript 2023年6月10日
    00
  • Express的路由详解

    Express的路由系统非常强大,它能够帮助开发者分发请求并处理对应的响应。在这篇文章中,我将详细讲解如何使用Express的路由系统。 路由基础 在Express中,路由实际上就是一个处理程序(函数),当接收到特定的HTTP请求时,它会被执行。下面是一个基本的Express路由示例: const express = require(‘express’) c…

    JavaScript 2023年6月11日
    00
  • JS实现PC手机端和嵌入式滑动拼图验证码三种效果

    实现PC手机端和嵌入式滑动拼图验证码,可以使用JS库“SlideVerify”,该库可以轻松地实现滑动验证码。下面是实现过程的完整攻略。 步骤一:引入SlideVerify库 在HTML文档中引入SlideVerify库,可以通过以下方式引入: <script src="path/to/SlideVerify.js"><…

    JavaScript 2023年6月10日
    00
  • js计算时间差代码【包括计算,天,时,分,秒】

    下面是JS计算时间差代码的完整攻略: 什么是时间差? 时间差通常指两个时间点之间的时间间隔,例如两个人的生日之间的时间间隔、一个电影的时长等等。 如何计算时间差? 我们可以通过JS中的Date对象和Math对象来计算时间差,具体步骤如下: 创建两个Date对象,分别表示两个时间点,比如: javascript let date1 = new Date(“20…

    JavaScript 2023年5月27日
    00
  • JavaScript验证知识整理

    当我们在制作网站时,常常需要对用户输入的信息进行验证,以确保输入的信息符合要求。JavaScript是一种经常用于验证输入信息的编程语言。下面是对”JavaScript验证知识整理”的完整攻略: 1.输入验证的重要性 在前端开发中,输入验证是非常重要的一项内容,因为它直接关系到用户体验和系统安全。如果用户输入的数据不健全,就会在网站运行时引发一系列的问题。 …

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