📅  最后修改于: 2023-12-03 15:02:23.943000             🧑  作者: Mango
当使用 JavaScript 在浏览器端处理 Cookie 时,有时我们需要删除一个指定名称的 Cookie。以下是一些常用的方法。
我们可以通过设置 Cookie 的 expires
属性将其过期时间设置为已过去时间。当浏览器准备删除已过期的 Cookie 时,它将从浏览器中删除该 Cookie。
以下是使用 JavaScript 删除 Cookie 的示例代码:
function deleteCookie(cookieName) {
document.cookie = cookieName + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
此函数将删除名称为 cookieName
的 Cookie。
为了测试该代码是否有效,让我们创建一个测试 HTML 页面。在该页面中,我们将创建一个名为 testCookie
的 Cookie,并尝试删除它。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Test Delete Cookie</title>
</head>
<body>
<script>
function setCookie(name, value, days) {
var expires = '';
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = '; expires=' + date.toGMTString();
}
document.cookie = name + '=' + value + expires + '; path=/';
}
function getCookie(name) {
var nameEQ = name + '=';
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) === ' ') c = c.substring(1, c.length);
if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);
}
return null;
}
function deleteCookie(cookieName) {
document.cookie = cookieName + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}
setCookie('testCookie', 'Hello, World!', 7);
console.log(getCookie('testCookie'));
deleteCookie('testCookie');
console.log(getCookie('testCookie'));
</script>
</body>
</html>
运行该 HTML 页面,将在浏览器控制台中看到两条输出,分别为 Cookie 的值和空值,证明已经成功删除了 Cookie。
在本文中,我们介绍了使用 JavaScript 在浏览器中删除指定名称的 Cookie 的方法。我们使用了 expires
属性将 Cookie 的过期时间设置为已过去时间,以便浏览器知道将其删除。