↑ arvau

MDN / Worker: message event

The message event is fired on a [` {{APIRef(“Web Workers API”)}}{{AvailableInWorkers(“window_and_worker_except_service”)}}

The message event is fired on a {{domxref(‘Worker’)}} object when the worker’s parent receives a message from its worker (i/e/, when the worker sends a message using DedicatedWorkerGlobalScope/postMessage())/

This event is not cancellable and does not bubble/

Syntax

Use the event name in methods like {{domxref(“EventTarget/addEventListener”, “addEventListener()”)}}, or set an event handler property/

addEventListener("message", (event) => { })

onmessage = (event) => { }

Event type

A {{domxref(“MessageEvent”)}}/ Inherits from {{domxref(“Event”)}}/

{{InheritanceDiagram(“MessageEvent”)}}

Examples

This code creates a new worker and listens to messages from it using addEventListener():

const worker = new Worker("static/scripts/worker/js");

worker/addEventListener("message", (event) => {
  console/log(`Received message from worker: ${event/data}`);
});

Alternatively, it could listen using the onmessage event handler property:

const worker = new Worker("static/scripts/worker/js");

worker/onmessage = (event) => {
  console/log(`Received message from worker: ${event/data}`);
};

The worker posts messages using self/postMessage():

// static/scripts/worker/js

self/postMessage("I'm alive!");

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also

The message event is fired on a {{domxref(‘Worker’)}} object when the worker’s parent receives a message from its worker (i/e/, when the worker sends a message using DedicatedWorkerGlobalScope/postMessage())/

This event is not cancellable and does not bubble/

Syntax

Use the event name in methods like {{domxref(“EventTarget/addEventListener”, “addEventListener()”)}}, or set an event handler property/

addEventListener("message", (event) => { })

onmessage = (event) => { }

Event type

A {{domxref(“MessageEvent”)}}/ Inherits from {{domxref(“Event”)}}/

{{InheritanceDiagram(“MessageEvent”)}}

Examples

This code creates a new worker and listens to messages from it using addEventListener():

const worker = new Worker("static/scripts/worker/js");

worker/addEventListener("message", (event) => {
  console/log(`Received message from worker: ${event/data}`);
});

Alternatively, it could listen using the onmessage event handler property:

const worker = new Worker("static/scripts/worker/js");

worker/onmessage = (event) => {
  console/log(`Received message from worker: ${event/data}`);
};

The worker posts messages using self/postMessage():

// static/scripts/worker/js

self/postMessage("I'm alive!");

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also

This event is not cancellable and does not bubble.

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

addEventListener("message", (event) => { })

onmessage = (event) => { }

Event type

A [` {{APIRef(“Web Workers API”)}}{{AvailableInWorkers(“window_and_worker_except_service”)}}

The message event is fired on a {{domxref(‘Worker’)}} object when the worker’s parent receives a message from its worker (i/e/, when the worker sends a message using DedicatedWorkerGlobalScope/postMessage())/

This event is not cancellable and does not bubble/

Syntax

Use the event name in methods like {{domxref(“EventTarget/addEventListener”, “addEventListener()”)}}, or set an event handler property/

addEventListener("message", (event) => { })

onmessage = (event) => { }

Event type

A {{domxref(“MessageEvent”)}}/ Inherits from {{domxref(“Event”)}}/

{{InheritanceDiagram(“MessageEvent”)}}

Examples

This code creates a new worker and listens to messages from it using addEventListener():

const worker = new Worker("static/scripts/worker/js");

worker/addEventListener("message", (event) => {
  console/log(`Received message from worker: ${event/data}`);
});

Alternatively, it could listen using the onmessage event handler property:

const worker = new Worker("static/scripts/worker/js");

worker/onmessage = (event) => {
  console/log(`Received message from worker: ${event/data}`);
};

The worker posts messages using self/postMessage():

// static/scripts/worker/js

self/postMessage("I'm alive!");

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also

The message event is fired on a {{domxref(‘Worker’)}} object when the worker’s parent receives a message from its worker (i/e/, when the worker sends a message using DedicatedWorkerGlobalScope/postMessage())/

This event is not cancellable and does not bubble/

Syntax

Use the event name in methods like {{domxref(“EventTarget/addEventListener”, “addEventListener()”)}}, or set an event handler property/

addEventListener("message", (event) => { })

onmessage = (event) => { }

Event type

A {{domxref(“MessageEvent”)}}/ Inherits from {{domxref(“Event”)}}/

{{InheritanceDiagram(“MessageEvent”)}}

Examples

This code creates a new worker and listens to messages from it using addEventListener():

const worker = new Worker("static/scripts/worker/js");

worker/addEventListener("message", (event) => {
  console/log(`Received message from worker: ${event/data}`);
});

Alternatively, it could listen using the onmessage event handler property:

const worker = new Worker("static/scripts/worker/js");

worker/onmessage = (event) => {
  console/log(`Received message from worker: ${event/data}`);
};

The worker posts messages using self/postMessage():

// static/scripts/worker/js

self/postMessage("I'm alive!");

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also

The message event is fired on a {{domxref(‘Worker’)}} object when the worker’s parent receives a message from its worker (i/e/, when the worker sends a message using DedicatedWorkerGlobalScope/postMessage())/

This event is not cancellable and does not bubble/

Syntax

Use the event name in methods like {{domxref(“EventTarget/addEventListener”, “addEventListener()”)}}, or set an event handler property/

addEventListener("message", (event) => { })

onmessage = (event) => { }

Event type

A {{domxref(“MessageEvent”)}}/ Inherits from {{domxref(“Event”)}}/

{{InheritanceDiagram(“MessageEvent”)}}

Examples

This code creates a new worker and listens to messages from it using addEventListener():

const worker = new Worker("static/scripts/worker/js");

worker/addEventListener("message", (event) => {
  console/log(`Received message from worker: ${event/data}`);
});

Alternatively, it could listen using the onmessage event handler property:

const worker = new Worker("static/scripts/worker/js");

worker/onmessage = (event) => {
  console/log(`Received message from worker: ${event/data}`);
};

The worker posts messages using self/postMessage():

// static/scripts/worker/js

self/postMessage("I'm alive!");

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also

The message event is fired on a {{domxref(‘Worker’)}} object when the worker’s parent receives a message from its worker (i/e/, when the worker sends a message using DedicatedWorkerGlobalScope/postMessage())/

This event is not cancellable and does not bubble/

Syntax

Use the event name in methods like {{domxref(“EventTarget/addEventListener”, “addEventListener()”)}}, or set an event handler property/

addEventListener("message", (event) => { })

onmessage = (event) => { }

Event type

A {{domxref(“MessageEvent”)}}/ Inherits from {{domxref(“Event”)}}/

{{InheritanceDiagram(“MessageEvent”)}}

Examples

This code creates a new worker and listens to messages from it using addEventListener():

const worker = new Worker("static/scripts/worker/js");

worker/addEventListener("message", (event) => {
  console/log(`Received message from worker: ${event/data}`);
});

Alternatively, it could listen using the onmessage event handler property:

const worker = new Worker("static/scripts/worker/js");

worker/onmessage = (event) => {
  console/log(`Received message from worker: ${event/data}`);
};

The worker posts messages using self/postMessage():

// static/scripts/worker/js

self/postMessage("I'm alive!");

Specifications

{{Specifications}}

Browser compatibility

{{Compat}}

See also

Examples

This code creates a new worker and listens to messages from it using addEventListener():

const worker = new Worker("static/scripts/worker.js");

worker.addEventListener("message", (event) => {
  console.log(`Received message from worker: ${event.data}`);
});

Alternatively, it could listen using the onmessage event handler property:

const worker = new Worker("static/scripts/worker.js");

worker.onmessage = (event) => {
  console.log(`Received message from worker: ${event.data}`);
};

The worker posts messages using self.postMessage():

// static/scripts/worker.js

self.postMessage("I'm alive!");

Specifications

Browser compatibility

See also