The location read-only property of the WorkerGlobalScope interface 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.
Syntax
var locationObj = self.location;
Value
A WorkerLocation object.
Example
If you called the following in a document served at localhost:8000
console.log(location);
inside a worker (which would basically be the equivalent of self.console.log(self.location);, as these are being called on the worker scope, which can be referenced with WorkerGlobalScope.self), you will get a WorkerLocation object written to the console — something like the following:
WorkerLocation {hash: "", search: "", pathname: "/worker.js", port: "8000", hostname: "localhost"…}
hash: ""
host: "localhost:8000"
hostname: "localhost"
href: "http://localhost:8000/worker.js"
origin: "http://localhost:8000"
pathname: "/worker.js"
port: "8000"
protocol: "http:"
search: ""
__proto__: WorkerLocation
You could use this location object to return more information about the document's location, as you might do with a normal Location object.
Note: Firefox has a bug with using console.log inside shared/service workers (see bug 1058644), which may return strange results, but this should be fixed soon.
Specifications
| Specification | Status | Comment |
|---|---|---|
| WHATWG HTML Living Standard The definition of 'location' in that specification. |
Living Standard |
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Basic support | 4 | 3.5 (1.9.1) | (Yes) | 11.5 | 4 |
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | Firefox OS (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|---|
| Basic support | ? | 40 | 1.0 (1.9.1) | 1.0.1 | (Yes) | (Yes) | 5.1 |