📅  最后修改于: 2023-12-03 15:27:02.709000             🧑  作者: Mango
在进行 Web 开发时,有时需要清除已设置的 Cookie,这里介绍如何清除所有 Cookie。
在 Javascript 中,可以通过以下方式清除所有 Cookie:
document.cookie.split(";").forEach(function(c) {
document.cookie = c.replace(/^ +/, "").replace(/=.*/, "=;expires=" + new Date().toUTCString() + ";path=/");
});
该方法的核心代码是遍历所有 Cookie 并设置空值和过期时间。需要注意的是,为了清除所有 Cookie,需要将所有 Cookie 的路径都设置为根路径 /
。
优点:
缺点:
为了提高清除 Cookie 的执行效率,可以定义一个清除 Cookie 的函数并分别调用该函数清除每个 Cookie,代码如下:
function deleteCookie(name) {
document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/;';
}
// 调用函数清除 Cookie
deleteCookie('cookie-1');
deleteCookie('cookie-2');
该方法的核心代码是定义了一个删除 Cookie 的函数,并设置过期时间为过去的时间戳。同时,也需要将路径设置为根路径 /
。
优点:
缺点:
以上两种方式都可以有效清除所有 Cookie,具体选择哪种方式,应该根据实际情况来确定。如果 Cookie 数量较少,可以采用直接清除的方式;如果 Cookie 数量较多或需要反复操作,可以采用定义函数的方式。