MessageEvent: MessageEvent() constructor
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since August 2016.
Note: This feature is available inWeb Workers.
TheMessageEvent() constructor creates a newMessageEvent object.
In this article
Syntax
new MessageEvent(type)new MessageEvent(type, options)Parameters
typeA string with the name of the event.It is case-sensitive and browsers always set it to
message.optionsOptionalAn object that,in addition of the properties defined in
Event(), can have the following properties:dataOptionalThe data you want contained in the MessageEvent.This can be of any data type, and will default to
nullif not specified.originOptionalA string representing the origin of the message emitter.This defaults to an empty string (
'') if not specified.lastEventIdOptionalA string representing a unique ID for the event.This defaults to an empty string ("") if not specified.
sourceOptionalA
MessageEventSource(which can be aWindow, aMessagePort,or aServiceWorkerobject) representing the message emitter.This defaults tonullif not set.portsOptionalAn array of
MessagePortobjects containing allMessagePortobjects sent with the message, in order.This defaults to an empty array ([]) if not specified.
Return value
A newMessageEvent object.
Examples
const myMessage = new MessageEvent("message", { data: "hello",});Specifications
| Specification |
|---|
| HTML> # the-messageevent-interface:dom-event-constructor> |
Browser compatibility
See also
ExtendableMessageEvent— similar to this interface but used in interfaces that needs to give more flexibility to authors.