CookieChangeEvent

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The CookieChangeEvent interface of the 'Cookie Store API' is the event type of the change event fired at a CookieStore when any cookie changes occur. A cookie change consists of a cookie and a type (either "changed" or "deleted").

Cookie changes that will cause the CookieChangeEvent to be dispatched are:

  • A cookie is newly created and not immediately removed. In this case type is "changed".
  • A cookie is newly created and immediately removed. In this case type is "deleted"
  • A cookie is removed. In this case type is "deleted".

Note: A cookie that is replaced due to the insertion of another cookie with the same name, domain, and path, is ignored and does not trigger a change event.

Event CookieChangeEvent

Constructor

CookieChangeEvent() Experimental

Creates a new CookieChangeEvent.

Instance properties

This interface also inherits properties from Event.

CookieChangeEvent.changed Read only Experimental

Returns an array containing one or more changed cookies.

CookieChangeEvent.deleted Read only Experimental

Returns an array containing one or more deleted cookies.

Examples

In this example when the cookie is set, the event listener logs the event to the console. This is a CookieChangeEvent object with the changed property containing an object representing the cookie that has just been set.

cookieStore.addEventListener("change", (event) => {
  console.log(event);
});

const one_day = 24 * 60 * 60 * 1000;
cookieStore.set({
  name: "cookie1",
  value: "cookie1-value",
  expires: Date.now() + one_day,
  domain: "example.com",
});

Specifications

Specification
Cookie Store API
# CookieChangeEvent

Browser compatibility

BCD tables only load in the browser