Spec-Zone.ru › Web APIs

WorkerGlobalScope

Примечание: Эта функция доступна только в Потоках Web Workers.

Интерфейс WorkerGlobalScope API Потоков Web Workers представляет собой интерфейс, представляющий область видимости любого потока. У потоков нет контекста браузера; эта область видимости содержит информацию, обычно передаваемую объектами Window — в данном случае обработчики событий, консоль или связанный объект WorkerNavigator. Каждый WorkerGlobalScope имеет свою собственную очередь событий.

Этот интерфейс обычно специализируется для каждого типа потока: DedicatedWorkerGlobalScope для выделенных потоков, SharedWorkerGlobalScope для общих потоков и ServiceWorkerGlobalScope для ServiceWorker. Свойство self возвращает специализированную область видимости для каждого контекста.

EventTarget WorkerGlobalScope

Свойства экземпляра

Этот интерфейс наследует свойства от интерфейса EventTarget.

WorkerGlobalScope.caches Только для чтения Безопасный контекст

Возвращает объект CacheStorage, связанный с текущим контекстом. Этот объект позволяет выполнять такие функции, как хранение ресурсов для автономного использования и создание пользовательских ответов на запросы.

console Только для чтения Нестандартный

Возвращает связанную с потоком console.

WorkerGlobalScope.crossOriginIsolated Только для чтения

Возвращает значение boolean, указывающее, находится ли веб-сайт в состоянии изоляции кросс-оригина.

WorkerGlobalScope.crypto Только для чтения

Возвращает объект Crypto, связанный с глобальным объектом.

WorkerGlobalScope.fonts Только для чтения

Возвращает связанный с потоком FontFaceSet.

WorkerGlobalScope.indexedDB Только для чтения

Предоставляет механизм для потоков асинхронного доступа к возможностям индексированных баз данных; возвращает объект IDBFactory.

WorkerGlobalScope.isSecureContext Только для чтения

Возвращает boolean, указывающий, является ли текущий контекст защищенным (true) или нет (false).

WorkerGlobalScope.location Только для чтения

Возвращает связанный с потоком WorkerLocation. Это специфический объект местоположения, в основном подмножество объекта Location для областей видимости браузера, но адаптирован для потоков.

WorkerGlobalScope.navigator Только для чтения

Возвращает связанный с потоком WorkerNavigator. Это специфический объект навигатора, в основном подмножество объекта Navigator для областей видимости браузера, но адаптирован для потоков.

WorkerGlobalScope.origin Только для чтения

Возвращает происхождение глобального объекта, сериализованное в виде строки.

WorkerGlobalScope.performance Только для чтения

Возвращает связанный с потоком Performance. Для потоков доступно только подмножество свойств и методов интерфейса Performance.

WorkerGlobalScope.scheduler Только для чтения

Возвращает объект Scheduler, связанный с текущим контекстом. Это точка входа для использования API Приоритетного планирования задач.

WorkerGlobalScope.trustedTypes Только для чтения

Возвращает объект TrustedTypePolicyFactory, связанный с глобальным объектом, предоставляющий точку входа для использования API Trusted Types.

WorkerGlobalScope.self Только для чтения

Возвращает ссылку на сам WorkerGlobalScope. В большинстве случаев это определенная область видимости, например, DedicatedWorkerGlobalScope, SharedWorkerGlobalScope или ServiceWorkerGlobalScope.

Методы экземпляра

Этот интерфейс наследует методы от интерфейса EventTarget.

WorkerGlobalScope.atob()

Декодирует строку данных, закодированную с использованием кодирования base-64.

WorkerGlobalScope.btoa()

Создаёт строку base-64, закодированную строку ASCII из строки двоичных данных.

WorkerGlobalScope.clearInterval()

Отменяет повторяющееся выполнение, заданное с помощью WorkerGlobalScope.setInterval().

WorkerGlobalScope.clearTimeout()

Отменяет отложенное выполнение, заданное с помощью WorkerGlobalScope.setTimeout().

WorkerGlobalScope.createImageBitmap()

Принимает различные источники изображений и возвращает Promise, который разрешается в ImageBitmap. Дополнительно, источник обрезается до прямоугольника пикселей, начинающегося в точке (sx, sy) с шириной sw и высотой sh.

WorkerGlobalScope.dump() Устаревший Нестандартный

Позволяет записать сообщение в stdout — т.е. в терминал. Это то же самое, что window.dump в Firefox, но для потоков.

WorkerGlobalScope.fetch()

Запускает процесс получения ресурса из сети.

WorkerGlobalScope.importScripts()

Импортирует один или несколько скриптов в область видимости потока. Можно указать любое количество, разделенных запятыми. Например: importScripts('foo.js', 'bar.js');.

WorkerGlobalScope.queueMicrotask()

Добавляет микрозадачу в очередь для выполнения в безопасное время до того, как управление вернётся в цикл событий браузера.

WorkerGlobalScope.setInterval()

Планирует выполнение функции каждые заданные миллисекунды.

WorkerGlobalScope.setTimeout()

Планирует выполнение функции через указанное время.

WorkerGlobalScope.structuredClone()

Создаёт глубокую копию заданного значения с использованием алгоритма структурированного клонирования.

WorkerGlobalScope.reportError()

Сообщает об ошибке в скрипте, имитируя необработанное исключение.

События

error

Вызывается при возникновении ошибки.

languagechange

Вызывается в глобальном/рабочем объекте области видимости, когда меняются предпочитаемые языки пользователя.

offline

Вызывается, когда браузер потерял доступ к сети, и значение navigator.onLine переключено на false.

online

Вызывается, когда браузер получил доступ к сети, и значение navigator.onLine переключено на true.

rejectionhandled

Вызывается при обработанных событиях отклонения Promise.

securitypolicyviolation

Вызывается, когда нарушен Политика безопасности контента.

unhandledrejection

Вызывается при необработанных событиях отклонения Promise.

Пример

Вы не будете напрямую обращаться к WorkerGlobalScope в своём коде; однако его свойства и методы наследуются более конкретными глобальными областями видимости, такими как DedicatedWorkerGlobalScope и SharedWorkerGlobalScope. Например, вы можете импортировать другой скрипт в рабочий процесс и вывести содержимое объекта области видимости рабочего процесса navigator с помощью двух следующих строк:

importScripts("foo.js");
console.log(navigator);

Примечание: Поскольку глобальная область видимости скрипта рабочего процесса фактически является глобальной областью видимости рабочего процесса, который вы запускаете (DedicatedWorkerGlobalScope или любой другой), и все глобальные области видимости рабочих процессов наследуют методы, свойства и т. д. от WorkerGlobalScope, вы можете запускать строки, подобные приведенным выше, без указания родительского объекта.

Спецификации

Спецификация
HTML
# the-workerglobalscope-common-interface

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari в iOS Samsung Internet WebView Android
WorkerGlobalScope 4 12 3.5 10.6 4 18 4 11 5 1.0 4.4
dump Нет Нет
3.5Этот метод существует, но не оказывает никакого эффекта.
Нет Нет Нет
4Этот метод существует, но не оказывает никакого эффекта.
Нет Нет Нет Нет
error_event 4 12 3.5 11.5 4 18 4 14 5 1.0 4.4
fonts 69 79 105 56 15 69 105 48 15 10.0 69
importScripts 4 12 4 10.6 4 18 4 11 5 1.0 4.4
languagechange_event 4 79 74 11.5 Нет 18 79 14 Нет 1.0 ≤37
unhandledrejection_event 49 79 69 36 11 49 79 36 11 5.0 49

См. также

  • Другие интерфейсы глобальных объектов: Window, DedicatedWorkerGlobalScope, SharedWorkerGlobalScope, ServiceWorkerGlobalScope
  • Другие интерфейсы, связанные с рабочими процессами: Worker, WorkerLocation и WorkerNavigator
  • Использование рабочих процессов

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WorkerGlobalScope

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API