JavaScript实现cookie的写入、读取、删除功能

当一个web页面被加载到浏览器中时,浏览器会为它分配一个cookie的存储区域。此时,开发者可以通过JavaScript代码来操作cookie的写入、读取和删除等功能。

写入cookie

可以使用document.cookie来写入cookie。document.cookie是一个字符串,它存储着当前网页的所有cookie。写入cookie的格式如下:

document.cookie = "key=value; expires=date; path=path; domain=domain; secure";

其中,各项参数的意义如下:

  • key: cookie的名称,同一网页对应多个cookie时要注意不要重名。
  • value: cookie的值,可以为任意字符串。
  • expires: cookie有效期,格式为date,如"Thu, 18 Dec 2022 12:00:00 GMT",也可以是一个过时的时间,如"-1 day"表示 cookie 会在当前时间的前一天过期。
  • path: 可选,表示cookie的作用域,如"/"表示网站的根目录,"/test/"表示网站的test目录。
  • domain: 可选,表示cookie可以被发送到哪个域名服务器,如"example.com"。
  • secure: 可选,表示cookie只能通过HTTPS协议加密传输,如"; secure"

下面是一个写入cookie的示例:

// 将名称为"name",值为"Tom",有效期为一小时的cookie写入网页
var now = new Date();
var expiredTime = now.getTime() + 60 * 60 * 1000; // 一小时后过期
now.setTime(expiredTime);
document.cookie = "name=Tom; expires=" + now.toUTCString();

读取cookie

当需要读取cookie的值时,可以使用document.cookie来获取当前网页下的cookie值。由于每个cookie都是以分号与空格作为分隔符的字符串,这就要用到JavaScript的字符串处理方法,如split()substr()indexOf()等。

下面是一个读取cookie的示例:

// 读取名称为"name"的cookie的值
function getCookie(name) {
  var cookieArr = document.cookie.split("; ");
  for (var i = 0; i < cookieArr.length; i++) {
    var pair = cookieArr[i].split("=");
    if (name == pair[0]) {
      return pair[1];
    }
  }
  return "";
}

console.log(getCookie("name")); // 输出"Tom"

删除cookie

删除cookie要注意的是,不能直接删除cookie,需要借助写入cookie时的参数来共同删除,包括name、value、expires、path、domain。如下面的示例所示:

// 删除名称为"name"的cookie
function deleteCookie(name) {
  var now = new Date();
  now.setTime(now.getTime() - 1);
  var cval = getCookie(name);
  if (cval != "") {
    document.cookie =
      name + "=" + cval + "; expires=" + now.toUTCString() + "; path=/";
  }
}

deleteCookie("name");
console.log(getCookie("name")); // 输出""

通过上述三个步骤,即可轻松地完成JavaScript实现cookie的写入、读取和删除等功能。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript实现cookie的写入、读取、删除功能 - Python技术站

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

相关文章

  • js仿360开机效果

    以下是详细的“js仿360开机效果”攻略。 简介 360开机效果是指当我们打开360安全卫士等产品时,会出现一个渐进式加载的进度条动画效果。这个效果也可以用JavaScript来实现,本攻略将介绍如何使用JavaScript实现。 实现思路 实现这个效果的核心思路是: 使用CSS实现加载进度条; 在进度条加载期间,每个等待的时间间隔内,增加对进度条的长度的微…

    JavaScript 2023年6月11日
    00
  • JavaScript中String对象的使用方法以及实例

    String对象介绍JavaScript中String对象代表字符串类型,它是JavaScript中最常用的对象之一,而且由于字符串在JavaScript中非常常用,因此String对象中的方法也是非常丰富。 String对象的使用方法 常用方法: charAt(index):返回指定下标的字符。 concat(str1,str2):连接两个或多个字符串,返…

    JavaScript 2023年5月27日
    00
  • 需要牢记的JavaScript基础知识

    下面是需要牢记的JavaScript基础知识的完整攻略: JavaScript基础知识 数据类型 JavaScript有7种基础数据类型: 布尔值(Boolean) 数字(Number) 字符串(String) null undefined Symbol 对象(Object) 其中,null和undefined是特殊的数据类型,常用于表示空值和未定义值。 示…

    JavaScript 2023年5月27日
    00
  • JavaScript 类型转换的详细实现

    下面是 JavaScript 类型转换的详细实现攻略。 1. 强制类型转换 JavaScript 中的强制类型转换是将一种类型的值转换为另一种类型的值。主要有以下几种类型转换的方式: 1.1 ToPrimitive:将值转换为基本类型值 使用 ToPrimitive 算法可以将一个值转换为基本类型值。该算法通常会被 JavaScript 内部的隐式类型转换所…

    JavaScript 2023年5月18日
    00
  • JavaScript实现抖音罗盘时钟

    下面我将详细讲解如何用JavaScript实现抖音罗盘时钟。 准备工作 在编写JavaScript代码之前,我们需要先准备好HTML和CSS文件。HTML文件中包含了页面布局的基本结构,CSS文件中定义了页面对应的样式。具体代码如下: <!DOCTYPE html> <html lang="en"> <hea…

    JavaScript 2023年5月27日
    00
  • javascript实现字符串反转的方法

    JavaScript实现字符串反转的方法 在JavaScript中,我们可以使用以下几种方式来实现字符串反转。 1. 利用split()和reverse()方法 使用JavaScript中的split()方法可以将字符串转换为一个字符数组,而数组中可以使用reverse()方法来反转字符数组,最后再使用join()方法将字符数组转成字符串。 function…

    JavaScript 2023年5月28日
    00
  • JS数组方法reverse()用法实例分析

    JS数组方法reverse()用法实例分析 reverse() 方法 reverse() 方法用于颠倒数组中元素的顺序,即实现数组的反转。 语法 array.reverse() 参数 无 返回值 被反转后的数组。 示例一 let arr = [1, 2, 3, 4, 5]; console.log("反转前的数组: ", arr); ar…

    JavaScript 2023年5月27日
    00
  • Node.js进行文件操作(读取/写入/修改/删除)详解

    下面是一篇关于Node.js进行文件操作的完整攻略。 前言 在Web开发中,文件操作是常用的操作之一。Node.js作为一门后端JavaScript语言,自然也能够进行文件操作。在Node.js中,文件操作是通过内置的fs模块来实现的。本文将详细介绍Node.js进行文件操作(读取/写入/修改/删除)的实现方法。 读取文件 在Node.js中,读取文件的方法…

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