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: "https://localhost:8000/worker.js" origin: "https://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 | No change from Web Workers. |
Web Workers The definition of 'location' in that specification. |
Candidate Recommendation | Initial definition. |
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 |