当前位置:首页 > JavaScript

js实现cookie

2026-03-01 04:22:27JavaScript

设置Cookie

使用document.cookie属性设置Cookie,格式为key=value。可以附加可选参数如过期时间、路径、域名等。

js实现cookie

document.cookie = "username=John Doe; expires=Thu, 18 Dec 2025 12:00:00 UTC; path=/";

读取Cookie

通过document.cookie获取所有Cookie字符串,需手动解析目标值。

js实现cookie

const cookies = document.cookie.split(';');
cookies.forEach(cookie => {
  const [key, value] = cookie.trim().split('=');
  if (key === 'username') console.log(value);
});

删除Cookie

将Cookie的过期时间设置为过去的时间,浏览器会自动删除。

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

封装工具函数

const CookieUtil = {
  set(name, value, days) {
    const date = new Date();
    date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
    document.cookie = `${name}=${value};expires=${date.toUTCString()};path=/`;
  },
  get(name) {
    const cookies = document.cookie.split(';');
    for (let cookie of cookies) {
      const [key, val] = cookie.trim().split('=');
      if (key === name) return decodeURIComponent(val);
    }
    return null;
  },
  remove(name) {
    this.set(name, '', -1);
  }
};

注意事项

  • Cookie大小限制约4KB,每个域名下的Cookie数量有限制(通常20-50个)。
  • 敏感信息不应存储在Cookie中,需考虑使用HttpOnly和Secure标志增强安全性。
  • 现代应用推荐使用Web Storage API(localStorage/sessionStorage)替代简单数据存储。

标签: jscookie
分享给朋友:

相关文章

js实现变形

js实现变形

使用 CSS 和 JavaScript 实现元素变形 在 JavaScript 中实现变形效果通常结合 CSS 的 transform 属性,通过动态修改该属性实现元素的旋转、缩放、倾斜或平移。 基…

js手势实现

js手势实现

手势识别实现方法 在JavaScript中实现手势识别通常涉及监听触摸事件(touchstart、touchmove、touchend)或鼠标事件(mousedown、mousemove、mouseu…

js 实现跳转

js 实现跳转

使用 window.location.href 进行跳转 通过修改 window.location.href 可以跳转到指定 URL,浏览器会加载新页面: window.location.hre…

js实现显示隐藏

js实现显示隐藏

显示隐藏的实现方法 在JavaScript中,实现元素的显示和隐藏可以通过多种方式完成。以下是几种常见的方法: 修改CSS的display属性 通过改变元素的display属性可以在none(隐藏)…

js实现轮播代码

js实现轮播代码

基础轮播实现 使用HTML、CSS和JavaScript创建一个简单的轮播效果。HTML部分定义轮播容器和图片元素。 <div class="carousel"> <div c…

js 实现拖拽

js 实现拖拽

实现拖拽的基本步骤 在JavaScript中实现拖拽功能需要监听几个关键事件:mousedown、mousemove和mouseup。以下是实现的基本逻辑。 监听目标元素的mousedown事件,记…