js实现cookies
如何在 JavaScript 中操作 Cookies
Cookies 是存储在用户浏览器中的小型数据片段,常用于会话管理、个性化设置等。以下是在 JavaScript 中操作 Cookies 的几种方法:
设置 Cookie
使用 document.cookie 属性可以设置一个 Cookie。需要指定名称、值和可选的属性(如过期时间、路径等)。

document.cookie = "username=John Doe; expires=Thu, 18 Dec 2023 12:00:00 UTC; path=/";
读取 Cookie
document.cookie 返回当前页面可访问的所有 Cookies,格式为字符串。可以通过解析字符串获取特定 Cookie 的值。
function getCookie(name) {
const cookies = document.cookie.split(';');
for (let cookie of cookies) {
const [cookieName, cookieValue] = cookie.trim().split('=');
if (cookieName === name) {
return decodeURIComponent(cookieValue);
}
}
return null;
}
const username = getCookie('username');
console.log(username); // 输出 "John Doe" 或 null
更新 Cookie
更新 Cookie 的方式与设置相同,只需重新设置同名 Cookie 即可覆盖原有值。

document.cookie = "username=Jane Smith; expires=Thu, 18 Dec 2023 12:00:00 UTC; path=/";
删除 Cookie
通过将 Cookie 的过期时间设置为过去的日期来删除它。
document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;";
设置 Cookie 属性
Cookie 支持多种属性,可以通过以下方式设置:
expires:设置过期时间(UTC 格式)。max-age:设置 Cookie 的有效期(秒数)。path:指定 Cookie 的路径范围。domain:指定 Cookie 的域名范围。secure:仅通过 HTTPS 传输。samesite:限制跨站点请求。
document.cookie = "token=abc123; max-age=3600; path=/; secure; samesite=strict";
注意事项
- Cookie 的大小通常限制为 4KB。
- 避免存储敏感信息(如密码),因为 Cookie 可能被窃取。
- 现代开发中,
localStorage和sessionStorage是替代方案,但 Cookies 仍适用于与服务器交互的场景。
通过以上方法,可以在 JavaScript 中轻松实现 Cookies 的增删改查操作。






