JavaScript数据存储 Cookie篇

yizhihongxing

下面是JavaScript数据存储之Cookie篇的完整攻略。

什么是Cookie

Cookie 是一种在客户端存储数据的机制,通过浏览器将数据存储在用户的计算机上。Cookie 通常由 Web 服务器生成,以便服务器可以记住用户的状态,从而改善用户对网站的体验。

Cookie 的属性

Cookie 有以下几个属性:

  • 名称:Cookie 的名称。
  • :Cookie 存储的数据。
  • 过期时间:Cookie 的有效期。
  • 路径:指定该 Cookie 的 URL 路径。
  • :指定可以访问该 Cookie 的域名。

创建Cookie

在 JavaScript 中使用 document.cookie 属性就可以操作 Cookie。

// 设置 cookie
document.cookie = "name=value;expires=date;path=path;domain=domain;secure";

设置 Cookie 时需要提供一个 name=value 的值对,expires 为可选参数,用于指定 Cookie 的过期时间,格式为 GMTString

示例:

// 设置一个过期时间为1天的Cookie
let d = new Date();
d.setTime(d.getTime() + (1 * 24 * 60 * 60 * 1000));
const expires = "expires=" + d.toGMTString();
document.cookie = "username=John Doe;" + expires + ";path=/";

获取Cookie

使用 document.cookie 属性获取所有的 Cookie。

// 获取所有 Cookie
const cookie = document.cookie;

获取指定名称的 Cookie。

// 获取名称为 username 的 Cookie
function getCookie(name) {
  const value = "; " + document.cookie;
  const parts = value.split("; " + name + "=");
  if (parts.length === 2) {
    return parts.pop().split(";").shift();
  }
}

删除Cookie

要删除 Cookie,只需将其值设置为空,并将其过期时间设置为过去(可以使用任何过去的日期)。

// 删除 Cookie
document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"

示例

设置和获取 Cookie 的示例:

// 设置 Cookie
document.cookie = "username=John Doe";

// 获取 Cookie
const cookie = document.cookie;
console.log(cookie); // "username=John Doe"

// 获取指定名称的 Cookie
function getCookie(name) {
  const value = "; " + document.cookie;
  const parts = value.split("; " + name + "=");
  if (parts.length === 2) {
    return parts.pop().split(";").shift();
  }
}
const username = getCookie("username");
console.log(username); // "John Doe"

删除 Cookie 的示例:

// 删除 Cookie
document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript数据存储 Cookie篇 - Python技术站

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

相关文章

  • JS计算距当前时间的时间差实例

    下面是JS计算距当前时间的时间差实例的完整攻略: 一、问题分析 在开发Web应用程序时,我们常常需要计算当前时间和其它时间之间的时间差,以便在页面中显示倒计时、计时器等信息。要实现这个功能,我们需要知道以下内容: 当前时间戳 目标时间戳 两个时间戳之间的时间差 二、解决方案 下面我们以两个示例说明如何计算时间差。 示例一:倒计时 在倒计时功能中,我们通常需要…

    JavaScript 2023年5月27日
    00
  • 用Axios Element实现全局的请求loading的方法

    下面是使用Axios Element实现全局请求loading的方法的攻略。 什么是Axios Element Axios Element是基于Axios封装的一个插件,使得我们可以很方便地对Axios进行增强和自定义操作。 实现全局请求loading的方法 我们可以将全局请求loading的实现分为以下几个步骤: 1. 安装Axios Element 我们…

    JavaScript 2023年6月11日
    00
  • 在JavaScript中查找字符串中最长单词的三种方法(推荐)

    让我们来详细讲解在JavaScript中查找字符串中最长单词的三种方法。 方法一:使用split()和sort()函数 该方法通过使用split()函数将字符串转换为数组,并使用sort()函数对数组进行排序,然后找到数组中最长的单词来查找最长单词。 function findLongestWord(str) { let words = str.split(…

    JavaScript 2023年5月28日
    00
  • JavaScript接口实现代码 (Interfaces In JavaScript)

    JavaScript在ES6之前并没有真正的接口(Interfaces)的概念,但是我们可以通过一些技巧来实现接口。在这篇文章中,我将为你呈现一个完整的JavaScript接口实现代码攻略: 什么是JavaScript接口? 接口是一个描述类应该如何实现函数的集合。在函数式编程中,接口是一个纯粹的抽象概念,用于描述具有特定行为或功能的组件。 如何实现Java…

    JavaScript 2023年5月18日
    00
  • 详解JavaScript 浮点数运算的精度问题

    详解JavaScript 浮点数运算的精度问题 JavaScript 中的浮点数运算经常会出现精度问题,这是因为计算机存储小数时采用的是二进制,而在二进制表示下并不能精确地表示所有的十进制小数。 浮点数存储机制 JavaScript 中的浮点数采用 IEEE 754 标准,用 64 位二进制数表示,其中第 0 位表示符号位,第 1 至 11 位表示指数,第 …

    JavaScript 2023年5月28日
    00
  • JavaScript高阶API数组reduce函数使用示例

    我们来详细讲解一下”JavaScript高阶API数组reduce函数使用示例”。 什么是reduce()函数? reduce()是JavaScript的高阶函数之一,可以将一个数组中的所有元素通过回调函数累加为一个值。该函数接受两个参数: 回调函数 初始值 回调函数用于对数组中的每个元素进行处理,并返回处理结果。第一次调用回调函数时,第一个参数为初始值,第…

    JavaScript 2023年5月27日
    00
  • ASP.NET 窗体间传值的方法

    ASP.NET是一种基于Web应用程序的框架,可以轻松实现Web开发,并提供了多种窗体间传值的方法。 一、Query String Query String是通过在URL上添加查询字符串的方法。例如,可以使用以下代码在源页面中将值传递到目标页面: string url = "targetPage.aspx?name=" + txtName…

    JavaScript 2023年6月11日
    00
  • JavaScript中的Window窗口对象

    关于 JavaScript 中的 Window 窗口对象,我将为您提供完整的攻略。 Window 窗口对象是什么? Window 窗口对象是 Web 浏览器或浏览器窗口的根对象。它代表一个浏览器窗口或一个 HTML 框架。 所有在浏览器窗口或框架中展示的内容都是在 Window 对象中进行操作的。Window 对象提供了许多方法和属性来管理浏览器窗口或框架,…

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