Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
WorkerGlobalScope
Baseline Widely available *
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
* Certaines parties de cette fonctionnalité peuvent bénéficier de prise en charge variables.
L'interfaceWorkerGlobalScope 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 objetsWindow — dans ce cas les gestionnaires d'événements, la console ou l'objetWorkerNavigator associé. ChaqueWorkerGlobalScope a sa propre boucle d'événements.
Cette interface est généralement spécialisée par chaque type de worker :DedicatedWorkerGlobalScope pour les workers dédiés,SharedWorkerGlobalScope pour les workers partagés, etServiceWorkerGlobalScope pourServiceWorker. La propriétéself renvoie la portée spécialisée pour chaque contexte.
Dans cet article
Propriétés
Cette interface hérite des propriétés de l'interfaceEventTarget et implémente les propriétés deWindowTimers,WindowBase64, etWindowEventHandlers.
Propriétés standard
WorkerGlobalScope.navigatorLecture seuleRenvoie le
WorkerNavigatorassocié au worker. C'est un objet navigator spécifique, principalement un sous-ensemble deNavigatorpour la navigation dans les portées, mais adapté aux workers.WorkerGlobalScope.selfLecture seuleRenvoie une référence au
WorkerGlobalScopelui-même. La plupart du temps, il s'agit d'une portée spécifique commeDedicatedWorkerGlobalScope,SharedWorkerGlobalScopeouServiceWorkerGlobalScope.WorkerGlobalScope.locationLecture seuleRenvoie le
WorkerLocationassocié au worker. Il s'agit d'un objet de localisation spécifique, principalement un sous-ensemble deLocationpour les portées de navigation, mais adapté aux workers.
Propriétés non standard
WorkerGlobalScope.performanceLecture seuleNon standardRenvoie la
Performanceassociée au worker. Il s'agit d'un objet de performance standard, sauf que seul un sous-ensemble de sa propriété et de ses méthodes est disponible pour les nœuds de calcul.WorkerGlobalScope.consoleLecture seuleNon standardRenvoie la
Consoleassociée au worker.
Gestionnaires d'événements
Cette interface hérite des gestionnaires d'événements de l'interfaceEventTarget et implémente les gestionnaires d'événements deWindowTimers etWindowBase64.
WorkerGlobalScope.onerrorEst un
EventHandlerreprésentant le code à appeler lorsque l'événementerrorest déclenché.WorkerGlobalScope.onofflineEst un
EventHandlerreprésentant le code à appeler lorsque l'événementofflineest déclenché.WorkerGlobalScope.ononlineEst un
EventHandlerreprésentant le code à appeler lorsque l'événementonlineest déclenché.WorkerGlobalScope.onlanguagechangeUn
EventHandlerdéclenché sur l'objet de portée global / worker lorsque les langues préférées de l'utilisateur changent.
Méthodes
Cette interface hérite des méthodes de l'interfaceEventTarget et implémente les méthodes deWindowTimers,WindowBase64,WindowEventHandlers etGlobalFetch.
Méthodes standard
WorkerGlobalScope.close()Ignore toutes les tâches mises en file d'attente dans la boucle d'événements de
WorkerGlobalScope, fermant ainsi cette portée particulière.WorkerGlobalScope.importScripts()Importe un ou plusieurs scripts dans la portée du worker. Vous pouvez en spécifier autant que vous le souhaitez, séparés par des virgules. Par exemple :
importScripts('foo.js', 'bar.js');
Méthodes non standard
WorkerGlobalScope.dump()Non standardVous permet d'écrire un message stdout — c'est-à-dire dans votre terminal. C'est la même chose que
window.dumpde Firefox, mais pour les workers.
Méthodes mises en œuvre d'ailleurs
WindowBase64.atob()Décode une chaîne de données qui a été encodée à l'aide d'un encodage base 64.
WindowBase64.btoa()Crée une chaîne ASCII encodée en base 64 à partir d'une chaîne de données binaires.
WindowTimers.clearInterval()Annule l'exécution répétée définie à l'aide de
WindowTimers.setInterval ().WindowTimers.clearTimeout()Annule l'exécution répétée définie à l'aide de
WindowTimers.setTimeout ().GlobalFetch.fetch()Démarre le processus de récupération d'une ressource.
WindowTimers.setInterval()Planifie l'exécution d'une fonction toutes les X millisecondes.
WindowTimers.setTimeout()Définit un délai pour l'exécution d'une fonction.
Exemple
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 queDedicatedWorkerGlobalScope etSharedWorkerGlobalScope. Par exemple, vous pouvez importer un autre script dans le worker et imprimer le contenu de l'objetnavigator 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 (DedicatedWorkerGlobalScope ou autre) et que toutes les portées globales de worker héritent des méthodes, des propriétés, etc. À partir deWorkerGlobalScope, vous pouvez exécuter des lignes telles que celles ci-dessus sans spécifier d'objet parent.
Spécifications
| Specification |
|---|
| HTML> # the-workerglobalscope-common-interface> |
Compatibilité des navigateurs
Voir aussi
- Autre interface d'objet globale:
Window,DedicatedWorkerGlobalScope,SharedWorkerGlobalScope, ,ServiceWorkerGlobalScope - Autres interfaces liées aux travailleurs:
Worker,WorkerLocation,WorkerGlobalScope, etServiceWorkerGlobalScope. - Utilisation de web workers.