--- title: WorkerGlobalScope slug: Web/API/WorkerGlobalScope tags: - API - Interface - Reference - TopicStub - WorkerGlobalScope - Workers translation_of: Web/API/WorkerGlobalScope ---
{{APIRef("Web Workers API")}}
L'interface WorkerGlobalScope
de l'API Web Workers est une interface représentant la portée de tout worker. Les Workers n'ont pas de contexte de navigation; cette portée contient les informations généralement véhiculées par les objets {{domxref("Window")}} — dans ce cas les gestionnaires d'événements, la console ou l'objet {{domxref("WorkerNavigator")}} associé. Chaque WorkerGlobalScope
a sa propre boucle d'événements.
Cette interface est généralement spécialisée par chaque type de worker : {{domxref("DedicatedWorkerGlobalScope")}} pour les workers dédiés, {{domxref("SharedWorkerGlobalScope")}} pour les workers partagés, et {{domxref("ServiceWorkerGlobalScope")}} pour ServiceWorker. La propriété self
renvoie la portée spécialisée pour chaque contexte.
Cette interface hérite des propriétés de l'interface {{domxref("EventTarget")}} et implémente les propriétés de {{domxref("WindowTimers")}}, {{domxref("WindowBase64")}}, et {{domxref("WindowEventHandlers")}}.
WorkerGlobalScope
lui-même. La plupart du temps, il s'agit d'une portée spécifique comme {{domxref("DedicatedWorkerGlobalScope")}}, {{domxref("SharedWorkerGlobalScope")}} ou {{domxref("ServiceWorkerGlobalScope")}}.Cette interface hérite des gestionnaires d'événements de l'interface {{domxref ("EventTarget")}} et implémente les gestionnaires d'événements de {{domxref ("WindowTimers")}} et {{domxref ("WindowBase64")}}.
Cette interface hérite des méthodes de l'interface {{domxref ("EventTarget")}} et implémente les méthodes de {{domxref ("WindowTimers")}}, {{domxref ("WindowBase64")}}, {{domxref ("WindowEventHandlers")}} et {{domxref ("GlobalFetch")}}.
WorkerGlobalScope
, fermant ainsi cette portée particulière. importScripts('foo.js', 'bar.js');
Vous n'accéderez pas à WorkerGlobalScope
directement dans votre code; cependant, ses propriétés et méthodes sont héritées par des portées globales plus spécifiques telles que {{domxref ("DedicatedWorkerGlobalScope")}} et {{domxref ("SharedWorkerGlobalScope")}}. Par exemple, vous pouvez importer un autre script dans le worker et imprimer le contenu de l'objet navigator
de l'étendue du worker en utilisant les deux lignes suivantes:
importScripts('foo.js'); console.log(navigator);
Note: Étant donné que la portée globale du script de worker est effectivement la portée globale du worker que vous exécutez ({{domxref ("DedicatedWorkerGlobalScope")}} ou autre) et que toutes les portées globales de worker héritent des méthodes, des propriétés, etc. À partir de WorkerGlobalScope
, vous pouvez exécuter des lignes telles que celles ci-dessus sans spécifier d'objet parent.
Spécification | Statut | Commentaire |
---|---|---|
{{SpecName('HTML WHATWG', '#workerglobalscope', 'WorkerGlobalScope')}} | {{Spec2('HTML WHATWG')}} | Aucun changement par rapport à {{SpecName ("Web Workers")}}. |
{{SpecName('Web Workers', '#workerglobalscope', 'WorkerGlobalScope')}} | {{Spec2('Web Workers')}} | Définition initiale. |
{{ CompatibilityTable() }}
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Support de base | {{CompatChrome(4)}} | {{CompatGeckoDesktop("1.9.1")}} | 10 | 10.6 | 4 |
ononline , onoffline |
{{CompatVersionUnknown}} | {{CompatGeckoDesktop("29")}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
console {{Non-standard_inline}} |
{{CompatVersionUnknown}} | {{CompatGeckoDesktop("29")}} as WorkerConsole {{CompatGeckoDesktop("30")}} as the regular Console |
{{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
performance |
{{CompatVersionUnknown}} | {{CompatGeckoDesktop("34")}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
Fonctionnalité | Android | Chrome for Android | Firefox Mobile (Gecko) | Firefox OS (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Support de base | {{CompatUnknown}} | {{CompatVersionUnknown}} | {{CompatGeckoMobile("1.9.1")}} | 1.0.1 | 10 | 11.5 | 5.1 |
ononline , onoffline |
{{CompatUnknown}} | {{CompatVersionUnknown}} | {{CompatGeckoMobile("29")}} as a specific WorkerConsole {{CompatGeckoMobile("30")}} as the regular Console |
1.4 | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
console {{Non-standard_inline}} |
{{CompatUnknown}} | {{CompatVersionUnknown}} | {{CompatGeckoMobile("29")}} | 1.4 | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
performance |
{{CompatUnknown}} | {{CompatVersionUnknown}} | {{CompatGeckoMobile("34")}} | 2.1 | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |