Clearing all cookies with JavaScript

cookies, javascript

Solution

function deleteAllCookies() {
    const cookies = document.cookie.split(";");

    for (let i = 0; i < cookies.length; i++) {
        const cookie = cookies[i];
        const eqPos = cookie.indexOf("=");
        const name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;
        document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT";
    }
}

Note that this code has two limitations:

- It will not delete cookies with `HttpOnly` flag set, as the `HttpOnly` flag disables Javascript's access to the cookie.

- It will not delete cookies that have been set with a `Path` value. (This is despite the fact that those cookies will appear in `document.cookie`, but you can't delete it without specifying the same `Path` value with which it was set.)

Problem

How do you delete all the cookies for the current domain using JavaScript?

Original source

Related problems