首页 >web前端 >js教程 >如何使用 JavaScript 以编程方式删除所有 Cookie?

如何使用 JavaScript 以编程方式删除所有 Cookie?

Patricia Arquette
Patricia Arquette原创
2024-11-25 10:33:11676浏览

How to Delete All Cookies Programmatically with JavaScript?

使用 JavaScript 删除所有 Cookie

问题: 如何使用 JavaScript 以编程方式删除当前域的所有 Cookie ?

答案: JavaScript提供了删除浏览器为当前域存储的所有 cookie 的方法。这是完成此操作的函数:

function deleteAllCookies() {
    document.cookie.split(';').forEach(cookie => {
        const eqPos = cookie.indexOf('=');
        const name = eqPos > -1 ? cookie.substring(0, eqPos) : cookie;
        document.cookie = name + '=;expires=Thu, 01 Jan 1970 00:00:00 GMT';
    });
}

但是,与此技术相关的限制:

  • HttpOnly Cookie: 它无法删除标记为HttpOnly,禁止 JavaScript 访问。
  • 特定路径Cookies:它也无法删除具有特定路径值的cookie。 JavaScript 只能删除路径匹配的 cookie。

通过调用 deleteAllCookies() 函数,可以在不指定路径的情况下有效清除当前域的所有非 HttpOnly cookie。

以上是如何使用 JavaScript 以编程方式删除所有 Cookie?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn