用js读、写、删除Cookie代码分享及详细注释说明

yizhihongxing

下面为大家分享JS读、写、删除Cookie的攻略,首先我们来简单了解一下Cookie。

Cookie简介

Cookie是一种存储在用户计算机上的小文件,它可以存储网站发送到用户计算机上的信息,以便于在用户下一次访问同一网站时使用,它属于浏览器缓存的一种。当然,Cookie的存储大小是有限制的,一般不超过4KB。

读Cookie

读取Cookie很简单,我们可以通过 document.cookie 来获取本地 Cookie 信息,该属性返回当前页面的所有 Cookie 信息。

function readCookie(name) {
    const cookies = document.cookie.split(';')
    for(let i = 0; i < cookies.length; i++) {
        const cookie = cookies[i].trim()
        if(cookie.startsWith(name + "=")) {
            return cookie.substring(name.length + 1,cookie.length)
        }
    }
    return null
}
console.log(readCookie('name'))

通过上方代码的实现,我们可以根据 Cookie 名称来获取到对应 Cookie 的值。

写Cookie

写Cookie其实也十分简单,我们可以使用 document.cookie 来存储 Cookie,这边代码包装了一个完整的写入函数示例。

function writeCookie(name, value, days, path='/') {
    let expires = ''
    if(days) {
        const date = new Date()
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000))
        expires = '; expires=' + date.toUTCString()
    }
    document.cookie = name + '=' + value + expires + '; path=' + path;
}

writeCookie('name', '张三', 7)

以上代码说明了如何设置一个名为name,值为张三,有效期为7天的Cookie,如果.days=0,则代表本次会话,关闭浏览器即失效。

删除Cookie

Cookie的删除也很简单,我们只需要重置其有效时间即可,让其过期即可。

function deleteCookie(name) {
    document.cookie = name + "=; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/";
}

deleteCookie('name')

以上示例中,我们通过将过期时间设置为1970年来删除一个名为name的Cookie。

总结

综上所述,通过以上的示例,我们可以很方便地对 Cookie 进行操作。需要注意的是,Cookie 受限于空间大小和浏览器限制,批量写入 Cookie 时需要注意 Cookie 的数量和大小。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:用js读、写、删除Cookie代码分享及详细注释说明 - Python技术站

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

相关文章

  • js正则相关知识点专题

    JS正则相关知识点专题 一、正则表达式的概念 正则表达式是对字符串操作的一种逻辑公式,是进行字符串匹配、查找、替换等操作的一种工具。JS中使用RegExp对象来表示正则表达式,可以通过构造函数或直接量来创建一个RegExp对象。 常用的正则表达式元字符有: ^: 匹配字符串开头 $: 匹配字符串结尾 .: 匹配单个字符 *: 匹配前面的字符0或多次 +: 匹…

    JavaScript 2023年6月10日
    00
  • 详解js location.href和window.open的几种用法和区别

    下面是“详解js location.href和window.open的几种用法和区别”的完整攻略。 一、前言 在前端开发中,有时候我们需要通过JS来控制浏览器的跳转或打开新窗口等操作,而其中常用的方法就是location.href和window.open。这两个方法虽然都是用来进行页面跳转或打开新窗口,但它们之间还是存在一些区别的。本文将详细讲解JS中loc…

    JavaScript 2023年6月11日
    00
  • 详解如何在JavaScript中使用for循环

    以下是“详解如何在JavaScript中使用for循环”的完整攻略。 1. for循环简介 for循环是一种在JavaScript中常用的循环结构,也是最基本的三种循环结构之一。for循环支持设置循环条件、循环执行语句和循环计数器的初始值,用于重复执行相同的代码块。 一般来说,for循环的语法结构如下: for (initialization; condit…

    JavaScript 2023年5月28日
    00
  • 基于JS实现01支付后的10秒倒计时

    要实现基于JS的10秒倒计时,可以采用以下步骤: 1.在HTML中创建倒计时显示元素 首先,在HTML中创建一个元素用于显示倒计时,例如: <div id="countdown">10</div> 这是一个div元素,给它一个id,方便在JS中获取并修改其内容。 2.利用JS实现倒计时功能 然后,在JS中获取倒计时…

    JavaScript 2023年6月11日
    00
  • AngularJS使用angular-formly进行表单验证

    AngularJS是目前比较流行的前端框架之一,用来构建复杂的单页应用程序。表单验证是前端开发过程中必不可少的环节。在AngularJS中,可以使用angular-formly库简化表单验证的开发过程。下面是使用angular-formly进行表单验证的详细攻略。 什么是angular-formly angular-formly是一个AngularJS表单生…

    JavaScript 2023年6月10日
    00
  • js 中{},[]中括号,大括号使用详解

    下面我来详细讲解一下 JS 中 {}、[] 中括号、大括号使用的详细攻略。 大括号 {} 大括号 {} 在 JS 中主要用于表示一个代码块,可以将多条语句组合在一起,在循环、条件语句、对象字面量等场景下经常使用。 下面是一个将数组中的奇偶数分离的示例: const arr = [1, 2, 3, 4, 5, 6]; const even = []; cons…

    JavaScript 2023年5月27日
    00
  • js编写trim()函数及正则表达式的运用

    让我来详细讲解一下如何写js中的trim()函数以及正则表达式的运用。 编写js中的trim()函数 在js中,字符串的trim()函数可以去除字符串两端的空格,但是在一些老版本的浏览器中可能不支持。因此我们可以自己编写一个trim()函数来解决这个问题。 方法一:使用正则表达式 通过正则表达式,我们可以去掉字符串两端的空格。具体实现代码如下: functi…

    JavaScript 2023年6月10日
    00
  • 详解javascript的变量与标识符

    我们来详细讲解JavaScript的变量与标识符。 变量 在JavaScript中,变量是用于存储数据的容器,它们可以被任何地方引用或更改。在使用变量之前,需要先声明它们,以告诉JavaScript编译器它们的类型。 声明变量有三种方式: 使用var关键字 var name = ‘张三’; 使用let关键字(ES6新增) let age = 20; 使用co…

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