The Worker()
constructor creates a Worker
object that executes the script at the specified URL. This script must obey the same-origin policy.
If the URL has an invalid syntax or if the same-origin policy is violated a DOMException
of type SECURITY_ERR
is thrown.
Note: that there is a disagreement among browser manufacturers about whether a data URI is of the same origin or not. Though Gecko 10.0 (Firefox 10.0 / Thunderbird 10.0 / SeaMonkey 2.7) and later accept data URIs, that's not the case in all other browsers.
var myWorker = new Worker(aURL, options);
USVString
representing the URL of the script the worker will execute. It must obey the same-origin policy.type
: A DOMString
specifying the type of worker to create. The value can be classic
or module
. If not specified, the default used is classic
.credentials
: A DOMString
specifying the type of credentials to use for the worker. The value can be omit
, same-origin
, or include
. If not specified, or if type is classic
, the default used is omit
(no credentials required).
name
: A DOMString
specifying an identifying name for the DedicatedWorkerGlobalScope
representing the scope of the worker, which is mainly useful for debugging purposes.SecurityError
is raised if the document is not allowed to start workers.NetworkError
is raised if the MIME type of one of the script is text/csv
, image/*
, video/*
, or audio/*
. It should always be text/javacript.
SyntaxError
is raised if aURL cannot be parsed.The following code snippet shows creation of a Worker
object using the Worker()
constructor and subsequent usage of the object:
var myWorker = new Worker('worker.js'); first.onchange = function() { myWorker.postMessage([first.value,second.value]); console.log('Message posted to worker'); }
For a full example, see ourBasic dedicated worker example (run dedicated worker).
Specification | Status | Comment |
---|---|---|
HTML Living Standard The definition of 'Worker()' in that specification. | Living Standard |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 4 | Yes | 3.5 | 10 | 10.6 | 4 |
Constructor name option |
70 | 18 | 55 | No | 57 | No
|
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | 4 | 18 | Yes | 4 | 11.5 | 5.1 | Yes |
Constructor name option |
No | 70 | ? | 55 | 57 | No
|
No |
The Worker
interface it belongs to.
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Worker/Worker