The SharedWorkerGlobalScope object (the SharedWorker global scope) is accessible through the self keyword. Some additional global functions, namespaces objects, and constructors, not typically associated with the worker global scope, but available on it, are listed in the JavaScript Reference. See the complete list of functions available to workers.

Documentation SharedWorkerGlobalScope by Mozilla Contributors, licensed under CC-BY-SA 2.5.

See also:

Variables

read onlyname:String

The name that the SharedWorker was (optionally) given when it was created using the SharedWorker.SharedWorker constructor. This is mainly useful for debugging purposes.

onconnect:Function

Is an EventHandler representing the code to be called when the connect event is raised — that is, when a MessagePort connection is opened between the associated SharedWorker and the main thread.

Methods

close():Void

Discards any tasks queued in the SharedWorkerGlobalScope's event loop, effectively closing this particular scope.

Inherited Variables

Defined by WorkerGlobalScope

read onlycrypto:Crypto

read onlylocation:WorkerLocation

Returns the WorkerLocation associated with the worker. It is a specific location object, mostly a subset of the Location for browsing scopes, but adapted to workers.

onerror:(EitherType<Event, String>, String, Int, Int, Dynamic) ‑> Dynamic

Is an EventHandler representing the code to be called when the error event is raised.

onoffline:Function

Is an EventHandler representing the code to be called when the offline event is raised.

ononline:Function

Is an EventHandler representing the code to be called when the online event is raised.

read onlyorigin:String

read onlyperformance:Performance

Returns the Performance associated with the worker. It is a regular performance object, except that only a subset of its property and methods are available to workers.

read onlyself:WorkerGlobalScope

Returns a reference to the WorkerGlobalScope itself. Most of the time it is a specific scope like DedicatedWorkerGlobalScopeSharedWorkerGlobalScope or ServiceWorkerGlobalScope.

Inherited Methods

Defined by WorkerGlobalScope

atob(atob:String):String

Throws:

null

DOMError

btoa(btoa:String):String

Throws:

null

DOMError

@:value({ handle : 0 })clearInterval(handle:Int = 0):Void

@:value({ handle : 0 })clearTimeout(handle:Int = 0):Void

createImageBitmap(aImage:ImageElement, aOffset:Int, aLength:Int, aFormat:ImageBitmapFormat, aLayout:Array<ChannelPixelLayout>):Promise<ImageBitmap>

createImageBitmap(aImage:VideoElement):Promise<ImageBitmap>

createImageBitmap(aImage:CanvasElement):Promise<ImageBitmap>

createImageBitmap(aImage:Blob):Promise<ImageBitmap>

createImageBitmap(aImage:ImageData):Promise<ImageBitmap>

createImageBitmap(aImage:CanvasRenderingContext2D):Promise<ImageBitmap>

createImageBitmap(aImage:ImageBitmap):Promise<ImageBitmap>

createImageBitmap(aImage:ArrayBufferView):Promise<ImageBitmap>

createImageBitmap(aImage:ArrayBuffer):Promise<ImageBitmap>

createImageBitmap(aImage:VideoElement, aSx:Int, aSy:Int, aSw:Int, aSh:Int):Promise<ImageBitmap>

createImageBitmap(aImage:CanvasElement, aSx:Int, aSy:Int, aSw:Int, aSh:Int):Promise<ImageBitmap>

createImageBitmap(aImage:Blob, aSx:Int, aSy:Int, aSw:Int, aSh:Int):Promise<ImageBitmap>

createImageBitmap(aImage:ImageData, aSx:Int, aSy:Int, aSw:Int, aSh:Int):Promise<ImageBitmap>

createImageBitmap(aImage:CanvasRenderingContext2D, aSx:Int, aSy:Int, aSw:Int, aSh:Int):Promise<ImageBitmap>

createImageBitmap(aImage:ImageBitmap, aSx:Int, aSy:Int, aSw:Int, aSh:Int):Promise<ImageBitmap>

createImageBitmap(aImage:ArrayBufferView, aSx:Int, aSy:Int, aSw:Int, aSh:Int):Promise<ImageBitmap>

createImageBitmap(aImage:ArrayBuffer, aSx:Int, aSy:Int, aSw:Int, aSh:Int):Promise<ImageBitmap>

createImageBitmap(aImage:VideoElement, aOffset:Int, aLength:Int, aFormat:ImageBitmapFormat, aLayout:Array<ChannelPixelLayout>):Promise<ImageBitmap>

createImageBitmap(aImage:CanvasElement, aOffset:Int, aLength:Int, aFormat:ImageBitmapFormat, aLayout:Array<ChannelPixelLayout>):Promise<ImageBitmap>

createImageBitmap(aImage:Blob, aOffset:Int, aLength:Int, aFormat:ImageBitmapFormat, aLayout:Array<ChannelPixelLayout>):Promise<ImageBitmap>

createImageBitmap(aImage:ImageData, aOffset:Int, aLength:Int, aFormat:ImageBitmapFormat, aLayout:Array<ChannelPixelLayout>):Promise<ImageBitmap>

createImageBitmap(aImage:CanvasRenderingContext2D, aOffset:Int, aLength:Int, aFormat:ImageBitmapFormat, aLayout:Array<ChannelPixelLayout>):Promise<ImageBitmap>

createImageBitmap(aImage:ImageBitmap, aOffset:Int, aLength:Int, aFormat:ImageBitmapFormat, aLayout:Array<ChannelPixelLayout>):Promise<ImageBitmap>

createImageBitmap(aImage:ArrayBufferView, aOffset:Int, aLength:Int, aFormat:ImageBitmapFormat, aLayout:Array<ChannelPixelLayout>):Promise<ImageBitmap>

createImageBitmap(aImage:ArrayBuffer, aOffset:Int, aLength:Int, aFormat:ImageBitmapFormat, aLayout:Array<ChannelPixelLayout>):Promise<ImageBitmap>

createImageBitmap(aImage:ImageElement):Promise<ImageBitmap>

createImageBitmap(aImage:ImageElement, aSx:Int, aSy:Int, aSw:Int, aSh:Int):Promise<ImageBitmap>

Throws:

null

DOMError

dump(?str:String):Void

Allows you to write a message to stdout — i.e. in your terminal. This is the same as Firefox's window.dump, but for workers.

importScripts(urls:Rest<String>):Void

Imports one or more scripts into the worker's scope. You can specify as many as you'd like, separated by commas. For example: importScripts('foo.js', 'bar.js');

Throws:

null

DOMError

@:value({ timeout : 0 })setInterval(handler:String, timeout:Int = 0, unused:Rest<Dynamic>):Int

@:value({ timeout : 0 })setInterval(handler:Function, timeout:Int = 0, arguments:Rest<Dynamic>):Int

Throws:

null

DOMError

@:value({ timeout : 0 })setTimeout(handler:String, timeout:Int = 0, unused:Rest<Dynamic>):Int

@:value({ timeout : 0 })setTimeout(handler:Function, timeout:Int = 0, arguments:Rest<Dynamic>):Int

Throws:

null

DOMError

structuredClone<T>(value:T, ?options:{transfer:Array<Any>}):T

Creates a deep clone of a given value using the structured clone algorithm.

Defined by EventTarget

addEventListener(type:String, listener:Function, ?options:EitherType<AddEventListenerOptions, Bool>, ?wantsUntrusted:Bool):Void

addEventListener(type:String, listener:EventListener, ?options:EitherType<AddEventListenerOptions, Bool>, ?wantsUntrusted:Bool):Void

Register an event handler of a specific event type on the EventTarget.

Throws:

null

DOMError

dispatchEvent(event:Event):Bool

Dispatch an event to this EventTarget.

Throws:

null

DOMError

removeEventListener(type:String, listener:Function, ?options:EitherType<EventListenerOptions, Bool>):Void

removeEventListener(type:String, listener:EventListener, ?options:EitherType<EventListenerOptions, Bool>):Void

Removes an event listener from the EventTarget.

Throws:

null

DOMError