diff --git a/files/ru/_redirects.txt b/files/ru/_redirects.txt index 942563d2db34b0..ae59b869fa5091 100644 --- a/files/ru/_redirects.txt +++ b/files/ru/_redirects.txt @@ -517,14 +517,6 @@ /ru/docs/Web/API/WindowEventHandlers/onhashchange /ru/docs/conflicting/Web/API/Window/hashchange_event /ru/docs/Web/API/WindowEventHandlers/onpopstate /ru/docs/conflicting/Web/API/Window/popstate_event /ru/docs/Web/API/WindowEventHandlers/onunload /ru/docs/Web/API/Window/unload_event -/ru/docs/Web/API/WindowOrWorkerGlobalScope /ru/docs/orphaned/Web/API/WindowOrWorkerGlobalScope -/ru/docs/Web/API/WindowOrWorkerGlobalScope/atob /ru/docs/Web/API/atob -/ru/docs/Web/API/WindowOrWorkerGlobalScope/btoa /ru/docs/Web/API/btoa -/ru/docs/Web/API/WindowOrWorkerGlobalScope/caches /ru/docs/Web/API/caches -/ru/docs/Web/API/WindowOrWorkerGlobalScope/clearTimeout /ru/docs/Web/API/clearTimeout -/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch /ru/docs/Web/API/fetch -/ru/docs/Web/API/WindowOrWorkerGlobalScope/setInterval /ru/docs/Web/API/setInterval -/ru/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout /ru/docs/Web/API/setTimeout /ru/docs/Web/API/WindowTimers.setTimeout /ru/docs/Web/API/setTimeout /ru/docs/Web/API/WindowTimers/setTimeout /ru/docs/Web/API/setTimeout /ru/docs/Web/API/Worker/onmessage /ru/docs/Web/API/Worker/message_event diff --git a/files/ru/_wikihistory.json b/files/ru/_wikihistory.json index 4a5c0ba7b53d9b..5a67263d8eaa50 100644 --- a/files/ru/_wikihistory.json +++ b/files/ru/_wikihistory.json @@ -16356,14 +16356,6 @@ "modified": "2020-10-15T21:34:09.985Z", "contributors": ["hisbvdis", "stary71", "alexismaster"] }, - "conflicting/Web/API/WindowOrWorkerGlobalScope": { - "modified": "2019-03-23T22:50:51.451Z", - "contributors": ["teoli"] - }, - "conflicting/Web/API/WindowOrWorkerGlobalScope_e2691f7ad05781a30c5fc5bb3b3f633a": { - "modified": "2019-03-23T23:01:38.088Z", - "contributors": ["fscholz"] - }, "conflicting/Web/API/XMLHttpRequest": { "modified": "2019-03-24T00:11:01.706Z", "contributors": [ @@ -17153,10 +17145,6 @@ "modified": "2019-03-23T22:08:47.903Z", "contributors": ["peshkov3"] }, - "orphaned/Web/API/WindowOrWorkerGlobalScope": { - "modified": "2020-04-09T14:17:18.919Z", - "contributors": ["Drrragonica", "b0rique", "kenrick95"] - }, "orphaned/Web/CSS/image-set()": { "modified": "2020-11-16T08:54:13.901Z", "contributors": ["chrisdavidmills", "justredpaul"] diff --git a/files/ru/conflicting/learn/javascript/asynchronous/index.md b/files/ru/conflicting/learn/javascript/asynchronous/index.md index 43f11b6cfd3fd4..b351cc7e1e115d 100644 --- a/files/ru/conflicting/learn/javascript/asynchronous/index.md +++ b/files/ru/conflicting/learn/javascript/asynchronous/index.md @@ -33,9 +33,9 @@ original_slug: Learn/JavaScript/Asynchronous/Timeouts_and_intervals Эти функции: -- [`setTimeout()`](/ru/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout) +- [`setTimeout()`](/ru/docs/Web/API/setTimeout) - : Выполняет указанный блок кода один раз по истечении указанного времени -- [`setInterval()`](/ru/docs/Web/API/WindowOrWorkerGlobalScope/setInterval) +- [`setInterval()`](/ru/docs/Web/API/setInterval) - : Выполняет указанный блок кода несколько раз с определённым интервалом между каждым вызовом. - [`requestAnimationFrame()`](/ru/docs/Web/API/window/requestAnimationFrame) - : Современная версия setInterval (). Выполняют указанный блок кода перед тем, как браузер в следующий раз перерисовывает отображение, позволяя запускать анимацию с подходящей частотой кадров независимо от среды, в которой она выполняется. @@ -106,7 +106,7 @@ let myGreeting = setTimeout(sayHi, 2000, 'Mr. Universe'); ### Очистка таймаутов -Наконец, если был создан тайм-аут, вы можете отменить его до истечения указанного времени, вызвав [`clearTimeout()`](/ru/docs/Web/API/WindowOrWorkerGlobalScope/clearTimeout), передав ему идентификатор вызова `setTimeout()` в качестве параметра. Итак, чтобы отменить указанный выше тайм-аут, вы должны сделать следующее: +Наконец, если был создан тайм-аут, вы можете отменить его до истечения указанного времени, вызвав [`clearTimeout()`](/ru/docs/Web/API/clearTimeout), передав ему идентификатор вызова `setTimeout()` в качестве параметра. Итак, чтобы отменить указанный выше тайм-аут, вы должны сделать следующее: ```js clearTimeout(myGreeting); @@ -118,7 +118,7 @@ clearTimeout(myGreeting); `setTimeout ()` отлично работает, когда вам нужно один раз запустить код по истечении заданного периода времени. Но что происходит, когда вам нужно запускать код снова и снова - например, в случае анимации? -Здесь пригодится [setInterval()](/ru/docs/Web/API/WindowOrWorkerGlobalScope/setInterval) . Работает очень похоже на setTimeout (), за исключением того, что функция, которую вы передаёте в качестве первого параметра, выполняется повторно не менее чем за количество миллисекунд, заданных вторым параметром. Вы также можете передать любые параметры, необходимые для выполняемой функции, в качестве последующих параметров вызова setInterval (). +Здесь пригодится [setInterval()](/ru/docs/Web/API/setInterval) . Работает очень похоже на setTimeout (), за исключением того, что функция, которую вы передаёте в качестве первого параметра, выполняется повторно не менее чем за количество миллисекунд, заданных вторым параметром. Вы также можете передать любые параметры, необходимые для выполняемой функции, в качестве последующих параметров вызова setInterval (). Давайте посмотрим на пример. Следующая функция создаёт новый объект [`Date()`](/ru/docs/Web/JavaScript/Reference/Global_Objects/Date), с помощью [`toLocaleTimeString()`](/ru/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleTimeString) извлекает из него строку с временем и отображает её в пользовательском интерфейсе. Затем он запускает функцию один раз в секунду с помощью `setInterval()`, создавая эффект цифровых часов, которые обновляются раз в секунду ([реальный пример](https://mdn.github.io/learning-area/javascript/asynchronous/loops-and-intervals/setinterval-clock.html), и [исходный код](https://github.com/mdn/learning-area/blob/master/javascript/asynchronous/loops-and-intervals/setinterval-clock.html)): diff --git a/files/ru/glossary/mixin/index.md b/files/ru/glossary/mixin/index.md index 9f1660b0e33297..ade5cd850ef4f3 100644 --- a/files/ru/glossary/mixin/index.md +++ b/files/ru/glossary/mixin/index.md @@ -9,7 +9,7 @@ slug: Glossary/Mixin Преимущество миксинов заключается в том, что они могут быть использованы для упрощения проектирования API, в которых несколько интерфейсов должны включать одни и те же методы и свойства. -Например, миксин {{domxref("WindowOrWorkerGlobalScope")}} используется для предоставления методов и свойств, которые должны быть доступны как в интерфейсах {{domxref("Window")}}, так и в интерфейсах {{domxref("WorkerGlobalScope")}}. Миксин осуществляется с помощью обоих этих интерфейсов. +Например, миксин `WindowOrWorkerGlobalScope` используется для предоставления методов и свойств, которые должны быть доступны как в интерфейсах {{domxref("Window")}}, так и в интерфейсах {{domxref("WorkerGlobalScope")}}. Миксин осуществляется с помощью обоих этих интерфейсов. ## Узнать больше diff --git a/files/ru/learn/javascript/asynchronous/introducing/index.md b/files/ru/learn/javascript/asynchronous/introducing/index.md index 15cbd1e32bb734..bf92e76d8a31f4 100644 --- a/files/ru/learn/javascript/asynchronous/introducing/index.md +++ b/files/ru/learn/javascript/asynchronous/introducing/index.md @@ -130,7 +130,7 @@ gods.forEach(function (eachName, index) { ## Промисы -Промисы — новый стиль написания асинхронного кода, который используется в современных Web API. Хорошим примером является [`fetch()`](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch) API, который современнее и эффективнее чем {{domxref("XMLHttpRequest")}}. Посмотрим на краткий пример, из нашей статьи [Fetching data from the server](/ru/docs/Learn/JavaScript/Client-side_web_APIs/Fetching_data): +Промисы — новый стиль написания асинхронного кода, который используется в современных Web API. Хорошим примером является [`fetch()`](/ru/docs/Web/API/fetch) API, который современнее и эффективнее чем {{domxref("XMLHttpRequest")}}. Посмотрим на краткий пример, из нашей статьи [Fetching data from the server](/ru/docs/Learn/JavaScript/Client-side_web_APIs/Fetching_data): ```js fetch("products.json") diff --git a/files/ru/learn/javascript/asynchronous/promises/index.md b/files/ru/learn/javascript/asynchronous/promises/index.md index 4d02fcae99ebf8..d100ecb40ec7d3 100644 --- a/files/ru/learn/javascript/asynchronous/promises/index.md +++ b/files/ru/learn/javascript/asynchronous/promises/index.md @@ -321,7 +321,7 @@ const values = await Promise.all([coffee, tea, description]); Есть подход, который позволяет обойти эту проблему — сохранить все выполняющиеся Promises в переменные, а уже после этого дожидаться (awaiting) их результата. Давайте посмотрим на несколько примеров. -Мы подготовили два примера — [slow-async-await.html](https://mdn.github.io/learning-area/javascript/asynchronous/async-await/slow-async-await.html) (см. [source code](https://github.com/mdn/learning-area/blob/master/javascript/asynchronous/async-await/slow-async-await.html)) и [fast-async-await.html](https://mdn.github.io/learning-area/javascript/asynchronous/async-await/fast-async-await.html) (см. [source code](https://github.com/mdn/learning-area/blob/master/javascript/asynchronous/async-await/fast-async-await.html)). Они оба начинаются с функции возвращающей promise, имитирующей асинхронность процессов при помощи вызова [`setTimeout()`](/ru/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout): +Мы подготовили два примера — [slow-async-await.html](https://mdn.github.io/learning-area/javascript/asynchronous/async-await/slow-async-await.html) (см. [source code](https://github.com/mdn/learning-area/blob/master/javascript/asynchronous/async-await/slow-async-await.html)) и [fast-async-await.html](https://mdn.github.io/learning-area/javascript/asynchronous/async-await/fast-async-await.html) (см. [source code](https://github.com/mdn/learning-area/blob/master/javascript/asynchronous/async-await/fast-async-await.html)). Они оба начинаются с функции возвращающей promise, имитирующей асинхронность процессов при помощи вызова [`setTimeout()`](/ru/docs/Web/API/setTimeout): ```js function timeoutPromise(interval) { diff --git a/files/ru/learn/javascript/client-side_web_apis/client-side_storage/index.md b/files/ru/learn/javascript/client-side_web_apis/client-side_storage/index.md index 6aa526c9fb18c0..b5d1ccc143724c 100644 --- a/files/ru/learn/javascript/client-side_web_apis/client-side_storage/index.md +++ b/files/ru/learn/javascript/client-side_web_apis/client-side_storage/index.md @@ -581,7 +581,7 @@ Let's walk through the most interesting parts of the example. We won't look at i } ``` -3. The following snippet is taken from inside `fetchVideoFromNetwork()` — here we fetch MP4 and WebM versions of the video using two separate {{domxref("fetch()", "WindowOrWorkerGlobalScope.fetch()")}} requests. We then use the {{domxref("blob()", "Body.blob()")}} method to extract each response's body as a blob, giving us an object representation of the videos that can be stored and displayed later on. +3. The following snippet is taken from inside `fetchVideoFromNetwork()` — here we fetch MP4 and WebM versions of the video using two separate {{domxref("fetch()")}} requests. We then use the {{domxref("blob()", "Body.blob()")}} method to extract each response's body as a blob, giving us an object representation of the videos that can be stored and displayed later on. We have a problem here though — these two requests are both asynchronous, but we only want to try to display or store the video when both promises have fulfilled. Fortunately there is a built-in method that handles such a problem — {{jsxref("Promise.all()")}}. This takes one argument — references to all the individual promises you want to check for fulfillment placed in an array — and is itself promise-based. @@ -727,7 +727,7 @@ self.addEventListener("install", function (e) { Внутри блока мы используем {{domxref("CacheStorage.match()")}} чтобы проверить, можно ли найти соответствующий запрос (т.е. совпадение по URL) в кеше. Промис возвращает найденный ответ или `undefined`, если ничего не нашлось. -Если совпадение нашлось, то просто возвращаем его как особый ответ. В противном случае, используем [fetch()](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch) для запроса ресурса из сети. +Если совпадение нашлось, то просто возвращаем его как особый ответ. В противном случае, используем [fetch()](/ru/docs/Web/API/fetch) для запроса ресурса из сети. ```js self.addEventListener("fetch", function (e) { diff --git a/files/ru/learn/javascript/client-side_web_apis/third_party_apis/index.md b/files/ru/learn/javascript/client-side_web_apis/third_party_apis/index.md index f9af09dddb8e59..d61d3cc5da4322 100644 --- a/files/ru/learn/javascript/client-side_web_apis/third_party_apis/index.md +++ b/files/ru/learn/javascript/client-side_web_apis/third_party_apis/index.md @@ -300,7 +300,7 @@ fetch(url) }); ``` -Here we run the request by passing our `url` variable to [`fetch()`](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch), convert the response body to JSON using the [`json()`](/ru/docs/Web/API/Body/json) function, then pass the resulting JSON to the `displayResults()` function so the data can be displayed in our UI. +Here we run the request by passing our `url` variable to [`fetch()`](/ru/docs/Web/API/fetch), convert the response body to JSON using the [`json()`](/ru/docs/Web/API/Body/json) function, then pass the resulting JSON to the `displayResults()` function so the data can be displayed in our UI. ### Displaying the data diff --git a/files/ru/mozilla/add-ons/webextensions/content_scripts/index.md b/files/ru/mozilla/add-ons/webextensions/content_scripts/index.md index 65f2b133f7da50..c4fa5b9a5964e0 100644 --- a/files/ru/mozilla/add-ons/webextensions/content_scripts/index.md +++ b/files/ru/mozilla/add-ons/webextensions/content_scripts/index.md @@ -450,7 +450,7 @@ In page script, window.x: 1 In page script, window.y: undefined ``` -Те же правила применимы к [`setTimeout()`](/ru/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout), [`setInterval()`](/ru/docs/Web/API/WindowOrWorkerGlobalScope/setInterval), и [`Function()`](/ru/docs/Web/JavaScript/Reference/Global_Objects/Function). +Те же правила применимы к [`setTimeout()`](/ru/docs/Web/API/setTimeout), [`setInterval()`](/ru/docs/Web/API/setInterval), и [`Function()`](/ru/docs/Web/JavaScript/Reference/Global_Objects/Function). > **Предупреждение:** Будьте очень осторожны, запуская код в контексте страничного скрипта. Окружение страничного скрипта может контролироваться потенциально зловредным веб-страницей, которая может переопределить объекты, с которыми вы взаимодействуете, так что их поведение станет совершенно непредсказуемым: > diff --git a/files/ru/mozilla/firefox/releases/65/index.md b/files/ru/mozilla/firefox/releases/65/index.md index 21f1d0d0270aa7..7eb8f7e5cb9f49 100644 --- a/files/ru/mozilla/firefox/releases/65/index.md +++ b/files/ru/mozilla/firefox/releases/65/index.md @@ -121,7 +121,7 @@ _Без изменений._ - {{domxref("Performance.toJSON()")}} доступен {{domxref("Web_Workers_API", "веб-воркерам", "", "1")}} ([Firefox bug 1504958](https://bugzil.la/1504958)). - Запросы {{domxref("XMLHttpRequest")}} будут выбрасывать `NetworkError`, если запрошено содержимое типа `Blob`, а метод запроса отличен от `GET` ([Firefox bug 1502599](https://bugzil.la/1502599)). - Многие функции {{domxref("Fullscreen API", "", "", "1")}} с префиксом `-moz-` объявлены устаревшими и выдают предупреждение в консоль JavaScript ([Firefox bug 1504946](https://bugzil.la/1504946)). -- {{domxref("WindowOrWorkerGlobalScope.createImageBitmap", "createImageBitmap()")}} отныне поддерживает изображения SVG ({{domxref("SVGImageElement")}}) в качестве источника ([Firefox bug 1500768](https://bugzil.la/1500768)). +- {{domxref("createImageBitmap()")}} отныне поддерживает изображения SVG ({{domxref("SVGImageElement")}}) в качестве источника ([Firefox bug 1500768](https://bugzil.la/1500768)). #### События DOM diff --git a/files/ru/orphaned/web/api/windoworworkerglobalscope/index.md b/files/ru/orphaned/web/api/windoworworkerglobalscope/index.md deleted file mode 100644 index 70d46cf1479332..00000000000000 --- a/files/ru/orphaned/web/api/windoworworkerglobalscope/index.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: WindowOrWorkerGlobalScope -slug: orphaned/Web/API/WindowOrWorkerGlobalScope ---- - -{{ApiRef()}} - -Миксин **`WindowOrWorkerGlobalScope`** описывает несколько функций, общих для интерфейсов {{domxref("Window")}} и {{domxref("WorkerGlobalScope")}} . Каждый из этих интерфейсов, конечно же, может добавить больше возможностей в дополнение к перечисленным ниже. - -> **Примечание:** WindowOrWorkerGlobalScope - это миксин, а не интерфейс; на самом деле вы не можете создать объект типа WindowOrWorkerGlobalScope. - -## Свойства - -Эти свойства определены в миксине {{domxref("WindowOrWorkerGlobalScope")}} и реализованы с помощью {{domxref("Window")}} и {{domxref("WorkerGlobalScope")}}. - -- {{domxref("WindowOrWorkerGlobalScope.caches")}} {{readOnlyinline}} - - : Возвращает объект {{domxref("CacheStorage")}}, связанный с текущим контекстом. Данный объект включает в себя такие функциональные возможности, как хранение активов для использования в автономном режиме, а также генерацию пользовательских ответов на запросы. -- {{domxref("WindowOrWorkerGlobalScope.indexedDB")}} {{readonlyInline}} - - : Предоставляет механизм асинхронного доступа приложений к возможностям индексируемых баз данных; возвращает объект {{domxref("IDBFactory")}}. -- {{domxref("WindowOrWorkerGlobalScope.isSecureContext")}} {{readOnlyinline}} - - : Возвращает логический ключ, указывающий, является ли текущий контекст безопасным (true) или нет (false). -- {{domxref("WindowOrWorkerGlobalScope.origin")}} {{readOnlyinline}} - - : Возвращает происхождение глобального диапазона, сериализованного в виде строки. - -## Методы - -Эти свойства определены на смеси {{domxref("WindowOrWorkerGlobalScope")}} и реализованы с помощью {{domxref("Window")}} и {{domxref("WorkerGlobalScope")}}. - -- {{domxref("WindowOrWorkerGlobalScope.atob()")}} - - : Декодирует строку данных, которая была закодирована с использованием кодировки base-64. -- {{domxref("WindowOrWorkerGlobalScope.btoa()")}} - - : Создаёт ASCII строку в кодировке base-64 из строки бинарных данных. -- {{domxref("WindowOrWorkerGlobalScope.clearInterval()")}} - - : Отменяет набор для повторного выполнения, используя {{domxref("WindowOrWorkerGlobalScope.setInterval()")}}. -- {{domxref("WindowOrWorkerGlobalScope.clearTimeout()")}} - - : Отменяет набор отложенного исполнения, используя {{domxref("WindowOrWorkerGlobalScope.setTimeout()")}}. -- {{domxref("WindowOrWorkerGlobalScope.createImageBitmap()")}} - - : Принимает различные источники изображений и возвращает {{domxref(" Promise")}}, который преобразуется в {{domxref("ImageBitmap")}}. Опционально источник обрезается до прямоугольника пикселей, происходящих от (sx, sy) с шириной sw и высотой sh. -- {{domxref("WindowOrWorkerGlobalScope.fetch()")}} - - : Запускает процесс извлечения ресурса из сети. -- {{domxref("WindowOrWorkerGlobalScope.setInterval()")}} - - : Планирует функцию, которая будет выполняться каждый раз по истечении заданного числа миллисекунд. -- {{domxref("WindowOrWorkerGlobalScope.setTimeout()")}} - - : Планирует функцию для выполнения в заданное время. - -## Specifications - -{{Specifications}} - -## Browser compatibility - -{{Compat}} - -## See also - -- {{domxref("Window")}} -- {{domxref("WorkerGlobalScope")}} diff --git a/files/ru/web/api/abortcontroller/abort/index.md b/files/ru/web/api/abortcontroller/abort/index.md index 31457dc558f676..7e3ea2fbdd27f7 100644 --- a/files/ru/web/api/abortcontroller/abort/index.md +++ b/files/ru/web/api/abortcontroller/abort/index.md @@ -5,7 +5,7 @@ slug: Web/API/AbortController/abort {{APIRef("DOM")}}{{SeeCompatTable}} -Метод `abort()` интерфейса {{domxref("AbortController")}} прерывает DOM запрос (например Fetch запрос) до его завершения. Это позволяет прервать [fetch запросы](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch), использование любого ответа {{domxref("Body")}} и потоков. +Метод `abort()` интерфейса {{domxref("AbortController")}} прерывает DOM запрос (например Fetch запрос) до его завершения. Это позволяет прервать [fetch запросы](/ru/docs/Web/API/fetch), использование любого ответа {{domxref("Body")}} и потоков. ## Синтаксис @@ -27,7 +27,7 @@ controller.abort(); Сначала мы создаём контроллер с помощью конструктора {{domxref("AbortController.AbortController","AbortController()")}}, а затем получаем ссылку на связанный объект {{domxref("AbortSignal")}} используя свойство {{domxref("AbortController.signal")}}. -Когда [fetch запрос](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch) инициируется, мы передаём `AbortSignal` в качестве опции внутрь объекта параметров запроса (см. `{signal}` ниже). Это связывает сигнал и контроллер с fetch запросом и позволяет нам прервать его, вызвав {{domxref("AbortController.abort()")}}, как показано ниже во втором обработчике событий. +Когда [fetch запрос](/ru/docs/Web/API/fetch) инициируется, мы передаём `AbortSignal` в качестве опции внутрь объекта параметров запроса (см. `{signal}` ниже). Это связывает сигнал и контроллер с fetch запросом и позволяет нам прервать его, вызвав {{domxref("AbortController.abort()")}}, как показано ниже во втором обработчике событий. ```js var controller = new AbortController(); diff --git a/files/ru/web/api/abortcontroller/abortcontroller/index.md b/files/ru/web/api/abortcontroller/abortcontroller/index.md index 0fe2e932cc77df..7facc7315e4a28 100644 --- a/files/ru/web/api/abortcontroller/abortcontroller/index.md +++ b/files/ru/web/api/abortcontroller/abortcontroller/index.md @@ -23,7 +23,7 @@ var controller = new AbortController(); Сначала мы создаём контроллер с помощью конструктора {{domxref("AbortController.AbortController","AbortController()")}}, а затем получаем ссылку на связанный объект {{domxref("AbortSignal")}} используя свойство {{domxref("AbortController.signal")}}. -Когда [fetch запрос](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch) инициируется, мы передаём `AbortSignal` в качестве опции внутрь объекта параметров запроса (см. `{signal}` ниже). Это связывает сигнал и контроллер с fetch запросом и позволяет нам прервать его, вызвав {{domxref("AbortController.abort()")}}, как показано ниже во втором обработчике событий. +Когда [fetch запрос](/ru/docs/Web/API/fetch) инициируется, мы передаём `AbortSignal` в качестве опции внутрь объекта параметров запроса (см. `{signal}` ниже). Это связывает сигнал и контроллер с fetch запросом и позволяет нам прервать его, вызвав {{domxref("AbortController.abort()")}}, как показано ниже во втором обработчике событий. ```js var controller = new AbortController(); diff --git a/files/ru/web/api/abortcontroller/index.md b/files/ru/web/api/abortcontroller/index.md index c1e82c999fefaa..4e065bb4af7876 100644 --- a/files/ru/web/api/abortcontroller/index.md +++ b/files/ru/web/api/abortcontroller/index.md @@ -22,7 +22,7 @@ slug: Web/API/AbortController ## Методы - {{domxref("AbortController.abort()")}} - - : Прерывает DOM запрос до момента его завершения. Это даёт возможность обрывать [fetch запросы](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch), потребителей любых ответов с {{domxref("Body")}} и потоки. + - : Прерывает DOM запрос до момента его завершения. Это даёт возможность обрывать [fetch запросы](/ru/docs/Web/API/fetch), потребителей любых ответов с {{domxref("Body")}} и потоки. ## Примеры @@ -30,7 +30,7 @@ slug: Web/API/AbortController Для начала мы создадим контроллер используя конструктор {{domxref("AbortController.AbortController","AbortController()")}}, затем возьмём ссылку на ассоциированный с ним объект {{domxref("AbortSignal")}} используя свойство {{domxref("AbortController.signal")}}. -При инициализации [fetch запроса](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch), мы передаём `AbortSignal` в качестве параметра (смотрите ниже `{signal}`). Это ассоциирует сигнал и контроллер с fetch запросом и даёт нам возможность остановить запрос вызовом метода {{domxref("AbortController.abort()")}}, что можно увидеть во втором addEventListener. +При инициализации [fetch запроса](/ru/docs/Web/API/fetch), мы передаём `AbortSignal` в качестве параметра (смотрите ниже `{signal}`). Это ассоциирует сигнал и контроллер с fetch запросом и даёт нам возможность остановить запрос вызовом метода {{domxref("AbortController.abort()")}}, что можно увидеть во втором addEventListener. ```js var controller = new AbortController(); diff --git a/files/ru/web/api/abortcontroller/signal/index.md b/files/ru/web/api/abortcontroller/signal/index.md index fde8ad237b2c6c..7e86d1e54e12ee 100644 --- a/files/ru/web/api/abortcontroller/signal/index.md +++ b/files/ru/web/api/abortcontroller/signal/index.md @@ -25,7 +25,7 @@ var signal = abortController.signal; Сначала мы создаём контроллер с помощью конструктора {{domxref("AbortController.AbortController","AbortController()")}}, а затем получаем ссылку на связанный объект {{domxref("AbortSignal")}} используя свойство {{domxref("AbortController.signal")}}. -Когда [fetch запрос](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch) инициируется, мы передаём `AbortSignal` в качестве опции внутрь объекта параметров запроса (см. `{signal}` ниже). Это связывает сигнал и контроллер с fetch запросом и позволяет нам прервать его, вызвав {{domxref("AbortController.abort()")}}, как показано ниже во втором обработчике событий. +Когда [fetch запрос](/ru/docs/Web/API/fetch) инициируется, мы передаём `AbortSignal` в качестве опции внутрь объекта параметров запроса (см. `{signal}` ниже). Это связывает сигнал и контроллер с fetch запросом и позволяет нам прервать его, вызвав {{domxref("AbortController.abort()")}}, как показано ниже во втором обработчике событий. ```js var controller = new AbortController(); diff --git a/files/ru/web/api/abortsignal/index.md b/files/ru/web/api/abortsignal/index.md index 998ab2ba75feb0..2bbfe605f548a4 100644 --- a/files/ru/web/api/abortsignal/index.md +++ b/files/ru/web/api/abortsignal/index.md @@ -29,7 +29,7 @@ _AbortSignal наследует методы от родительского и Сначала мы создаём контроллер с помощью конструктора {{domxref("AbortController.AbortController","AbortController()")}}, а затем получаем ссылку на связанный объект {{domxref("AbortSignal")}} используя свойство {{domxref("AbortController.signal")}}. -Когда [fetch запрос](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch) инициируется, мы передаём `AbortSignal` в качестве опции внутрь объекта параметров запроса (см. `{signal}` ниже). Это связывает сигнал и контроллер с fetch запросом и позволяет нам прервать его, вызвав {{domxref("AbortController.abort()")}}, как показано ниже во втором обработчике событий. +Когда [fetch запрос](/ru/docs/Web/API/fetch) инициируется, мы передаём `AbortSignal` в качестве опции внутрь объекта параметров запроса (см. `{signal}` ниже). Это связывает сигнал и контроллер с fetch запросом и позволяет нам прервать его, вызвав {{domxref("AbortController.abort()")}}, как показано ниже во втором обработчике событий. ```js var controller = new AbortController(); diff --git a/files/ru/web/api/atob/index.md b/files/ru/web/api/atob/index.md index edd5d33b01457e..dca2d4d5dea120 100644 --- a/files/ru/web/api/atob/index.md +++ b/files/ru/web/api/atob/index.md @@ -1,11 +1,11 @@ --- -title: WindowOrWorkerGlobalScope.atob() +title: Глобальная функция atob() slug: Web/API/atob --- {{APIRef("HTML DOM")}} -Функция **`WindowOrWorkerGlobalScope.atob()`** декодирует строку данных, которая была закодирована с использованием base-64. Вы можете использовать метод {{domxref("WindowOrWorkerGlobalScope.btoa","btoa()")}}, чтобы закодировать и передать данные, которые в исходном виде могут вызвать проблемы передачи, затем отправить их и использовать метод `atob()`, чтобы декодировать данные снова. Например, вы можете закодировать, передать и декодировать управляющие символы, такие как ASCII-значения от 0 до 31. +Функция **`atob()`** декодирует строку данных, которая была закодирована с использованием base-64. Вы можете использовать метод {{domxref("btoa","btoa()")}}, чтобы закодировать и передать данные, которые в исходном виде могут вызвать проблемы передачи, затем отправить их и использовать метод `atob()`, чтобы декодировать данные снова. Например, вы можете закодировать, передать и декодировать управляющие символы, такие как ASCII-значения от 0 до 31. В случаях использования с Unicode или UTF-8 строками, смотрите [this note at Base64 encoding and decoding](/ru/docs/Web/JavaScript/Base64_encoding_and_decoding#The_.22Unicode_Problem.22) и [this note at `btoa()`](/ru/docs/Web/API/window.btoa#Unicode_Strings). @@ -38,5 +38,5 @@ var decodedData = window.atob(encodedData); // декодирует строку - [Base64 encoding and decoding](/ru/docs/Web/API/WindowBase64/Base64_encoding_and_decoding) - [`data` URIs](/ru/docs/data_URIs) -- {{domxref("WindowOrWorkerGlobalScope.btoa","window.btoa()")}} +- {{domxref("btoa", "btoa()")}} - [Components.utils.importGlobalProperties](/ru/docs/Components.utils.importGlobalProperties) diff --git a/files/ru/web/api/cleartimeout/index.md b/files/ru/web/api/cleartimeout/index.md index b7f4b5a17e6eff..e1d61a24845c57 100644 --- a/files/ru/web/api/cleartimeout/index.md +++ b/files/ru/web/api/cleartimeout/index.md @@ -1,11 +1,11 @@ --- -title: WindowOrWorkerGlobalScope.clearTimeout() +title: Глобальная функция clearTimeout() slug: Web/API/clearTimeout --- {{APIRef("HTML DOM")}} -**`clearTimeout()`** метод {{domxref("WindowOrWorkerGlobalScope")}} отменяет таймаут, ранее установленный вызовом {{domxref("WindowOrWorkerGlobalScope.setTimeout", "setTimeout()")}}. +Глобальный метод **`clearTimeout()`** отменяет таймаут, ранее установленный вызовом {{domxref("setTimeout()")}}. ## Синтаксис @@ -18,7 +18,7 @@ scope.clearTimeout(timeoutID) - `timeoutID` - : Идентификатор таймаута, который вы хотите отменить. Этот идентификатор был возвращён соответствующим вызовом `setTimeout()`. -It's worth noting that the pool of IDs used by {{domxref("WindowOrWorkerGlobalScope.setTimeout", "setTimeout()")}} and {{domxref("WindowOrWorkerGlobalScope.setInterval", "setInterval()")}} are shared, which means you can technically use `clearTimeout()` and {{domxref("WindowOrWorkerGlobalScope.clearInterval", "clearInterval()")}} interchangeably. However, for clarity, you should avoid doing so. +It's worth noting that the pool of IDs used by {{domxref("setTimeout()")}} and {{domxref("setInterval()")}} are shared, which means you can technically use `clearTimeout()` and {{domxref("clearInterval()")}} interchangeably. However, for clarity, you should avoid doing so. ## Пример использования @@ -68,8 +68,7 @@ window.onclick = function () { ## Смотрите также -- {{domxref("WindowOrWorkerGlobalScope.setTimeout()")}} -- {{domxref("WindowOrWorkerGlobalScope.setInterval()")}} -- {{domxref("WindowOrWorkerGlobalScope.clearInterval()")}} +- {{domxref("setTimeout()")}} +- {{domxref("setInterval()")}} +- {{domxref("clearInterval()")}} - {{domxref("Window.requestAnimationFrame()")}} -- [_Daemons_ management](/ru/docs/JavaScript/Timers/Daemons) diff --git a/files/ru/web/api/document/scroll_event/index.md b/files/ru/web/api/document/scroll_event/index.md index 9246e1e9ad0477..d0d1a1778d4fd8 100644 --- a/files/ru/web/api/document/scroll_event/index.md +++ b/files/ru/web/api/document/scroll_event/index.md @@ -37,7 +37,7 @@ slug: Web/API/Document/scroll_event ### Пропуск тактов события прокрутки -Поскольку события прокрутки могут запускаться с высокой скоростью, обработчик событий не должен выполнять вычислительно-ёмкие операции, такие как модификации DOM. Вместо этого рекомендуется пропускать такты события, используя {{DOMxRef("Window.requestAnimationFrame()", "requestAnimationFrame()")}}, {{DOMxRef("WindowOrWorkerGlobalScope.setTimeout()", "setTimeout()")}} или {{DOMxRef("CustomEvent")}}, как показано ниже. +Поскольку события прокрутки могут запускаться с высокой скоростью, обработчик событий не должен выполнять вычислительно-ёмкие операции, такие как модификации DOM. Вместо этого рекомендуется пропускать такты события, используя {{DOMxRef("Window.requestAnimationFrame()", "requestAnimationFrame()")}}, {{DOMxRef("setTimeout()")}} или {{DOMxRef("CustomEvent")}}, как показано ниже. Обратите внимание, однако, что входные события и кадры анимации запускаются примерно с одинаковой скоростью, и поэтому приведённая ниже оптимизация зачастую не требуется. В примере ниже оптимизируется событие `scroll` для `requestAnimationFrame`: diff --git a/files/ru/web/api/fetch/index.md b/files/ru/web/api/fetch/index.md index d63cd972037250..cae878cac6ff07 100644 --- a/files/ru/web/api/fetch/index.md +++ b/files/ru/web/api/fetch/index.md @@ -1,15 +1,13 @@ --- -title: WindowOrWorkerGlobalScope.fetch() +title: Глобальная функция fetch() slug: Web/API/fetch --- -{{APIRef("Fetch API")}} +{{APIRef("Fetch API")}}{{AvailableInWorkers}} -Метод **`fetch()`** , относящийся к миксину {{domxref("WindowOrWorkerGlobalScope")}}, запускает процесс извлечения ресурса из сети. Возвращает promise, содержащий {{domxref("Response")}} объект (ответ на запрос). +Глобальный метод **`fetch()`** запускает процесс извлечения ресурса из сети. Возвращает promise, содержащий {{domxref("Response")}} объект (ответ на запрос). -`WorkerOrGlobalScope` относится к {{domxref("Window")}} и {{domxref("WorkerGlobalScope")}} сразу. Это означает, что метод `fetch()` доступен практически в любом контексте, в котором бы вы не захотели получить ресурсы. - -Промис {{domxref("WindowOrWorkerGlobalScope.fetch","Fetch()")}} завершается {{jsxref("TypeError")}}, если возникает сетевая ошибка, хотя обычно это означает проблему с доступами или аналогичную ей. Для успешного завершения `fetch()` достаточно удостовериться в том, что промис выполнен и что свойство {{domxref("Response.ok")}} имеет значение `true`. HTTP статус 404 не является сетевой ошибкой. +Промис {{domxref("fetch()")}} завершается {{jsxref("TypeError")}}, если возникает сетевая ошибка, хотя обычно это означает проблему с доступами или аналогичную ей. Для успешного завершения `fetch()` достаточно удостовериться в том, что промис выполнен и что свойство {{domxref("Response.ok")}} имеет значение `true`. HTTP статус 404 не является сетевой ошибкой. Метод `fetch()` контролируется директивой `connect-src` directive of [Content Security Policy](/ru/docs/Security/CSP/CSP_policy_directives) (политика безопасности контента), а не директивой ресурсов, которые извлекает. diff --git a/files/ru/web/api/fetch_api/using_fetch/index.md b/files/ru/web/api/fetch_api/using_fetch/index.md index 05a9c321473d63..42f0fb707a736f 100644 --- a/files/ru/web/api/fetch_api/using_fetch/index.md +++ b/files/ru/web/api/fetch_api/using_fetch/index.md @@ -10,7 +10,7 @@ slug: Web/API/Fetch_API/Using_Fetch Обратите внимание, `fetch` спецификация отличается от `jQuery.ajax()` в основном в двух пунктах: - Promise возвращаемый вызовом `fetch()` **не перейдёт в состояние "отклонено" из-за ответа HTTP, который считается ошибкой**, даже если ответ HTTP 404 или 500. Вместо этого, он будет выполнен нормально (с значением false в статусе `ok` ) и будет отклонён только при сбое сети или если что-то помешало запросу выполниться. -- По умолчанию, `fetch` **не будет отправлять или получать cookie файлы** с сервера, в результате чего запросы будут осуществляться без проверки подлинности, что приведёт к неаутентифицированным запросам, если сайт полагается на проверку пользовательской сессии (для отправки cookie файлов в аргументе [init options](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch#Parameters) должно быть задано значение свойства _credentials_ отличное от значения по умолчанию `omit`). +- По умолчанию, `fetch` **не будет отправлять или получать cookie файлы** с сервера, в результате чего запросы будут осуществляться без проверки подлинности, что приведёт к неаутентифицированным запросам, если сайт полагается на проверку пользовательской сессии (для отправки cookie файлов в аргументе [init options](/ru/docs/Web/API/fetch#Parameters) должно быть задано значение свойства _credentials_ отличное от значения по умолчанию `omit`). > **Примечание:** 25 августа 2017 г. в спецификации изменилось значение по умолчанию свойства _credentials_ на `same-origin`. Firefox применяет это изменение с версии 61.0b13. @@ -118,7 +118,7 @@ try { ## Загрузка файла на сервер -На сервер можно загрузить файл, используя комбинацию HTML-элемента ``, {{domxref("FormData.FormData","FormData()")}} и {{domxref("WindowOrWorkerGlobalScope/fetch","fetch()")}}. +На сервер можно загрузить файл, используя комбинацию HTML-элемента ``, {{domxref("FormData.FormData","FormData()")}} и {{domxref("fetch()")}}. ```js const formData = new FormData(); @@ -141,7 +141,7 @@ try { ## Загрузка нескольких файлов на сервер -На сервер можно загрузить несколько файлов, используя комбинацию HTML-элемента ``, {{domxref("FormData.FormData","FormData()")}} и {{domxref("WindowOrWorkerGlobalScope/fetch","fetch()")}}. +На сервер можно загрузить несколько файлов, используя комбинацию HTML-элемента ``, {{domxref("FormData.FormData","FormData()")}} и {{domxref("fetch()")}}. ```js const formData = new FormData(); diff --git a/files/ru/web/api/page_visibility_api/index.md b/files/ru/web/api/page_visibility_api/index.md index 5869ca1a6e7267..a21d648d424aff 100644 --- a/files/ru/web/api/page_visibility_api/index.md +++ b/files/ru/web/api/page_visibility_api/index.md @@ -31,11 +31,11 @@ slug: Web/API/Page_Visibility_API Separately from the Page Visibility API, user agents typically have a number of policies in place to mitigate the performance impact of background or hidden tabs. These may include: - Most browsers stop sending {{domxref("Window.requestAnimationFrame", "requestAnimationFrame()")}} callbacks to background tabs or hidden {{ HTMLElement("iframe") }}s in order to improve performance and battery life. -- Timers such as {{domxref("WindowOrWorkerGlobalScope.setTimeout", "setTimeout()")}} are throttled in background/inactive tabs to help improve performance. See [Reasons for delays longer than specified](/ru/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout#Reasons_for_delays_longer_than_specified) for more details. +- Timers such as {{domxref("setTimeout()")}} are throttled in background/inactive tabs to help improve performance. See [Reasons for delays longer than specified](/ru/docs/Web/API/setTimeout#Reasons_for_delays_longer_than_specified) for more details. - Budget-based background timeout throttling is now available in modern browsers (Firefox 58+, Chrome 57+), placing an additional limit on background timer CPU usage. This operates in a similar way across modern browsers, with the details being as follows: - In Firefox, windows in background tabs each have their own time budget in milliseconds — a max and a min value of +50 ms and -150 ms, respectively. Chrome is very similar except that the budget is specified in seconds. - - Windows are subjected to throttling after 30 seconds, with the same throttling delay rules as specified for window timers (again, see [Reasons for delays longer than specified](/ru/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout#Reasons_for_delays_longer_than_specified)). In Chrome, this value is 10 seconds. + - Windows are subjected to throttling after 30 seconds, with the same throttling delay rules as specified for window timers (again, see [Reasons for delays longer than specified](/ru/docs/Web/API/setTimeout#Reasons_for_delays_longer_than_specified)). In Chrome, this value is 10 seconds. - Timer tasks are only permitted when the budget is non-negative. - Once a timer's code has finished running, the duration of time it took to execute is subtracted from its window's timeout budget. - The budget regenerates at a rate of 10 ms per second, in both Firefox and Chrome. diff --git a/files/ru/web/api/request/index.md b/files/ru/web/api/request/index.md index 9e5d7cbf50836c..f08749a211b6f9 100644 --- a/files/ru/web/api/request/index.md +++ b/files/ru/web/api/request/index.md @@ -80,7 +80,7 @@ const method = request.method; const credentials = request.credentials; ``` -You could then fetch this request by passing the `Request` object in as a parameter to a {{domxref("WindowOrWorkerGlobalScope.fetch()")}} call, for example: +You could then fetch this request by passing the `Request` object in as a parameter to a {{domxref("fetch()")}} call, for example: ```js fetch(request) @@ -106,7 +106,7 @@ const bodyUsed = request.bodyUsed; > **Примечание:** Типом тела может быть только {{domxref("Blob")}}, {{domxref("BufferSource")}}, {{domxref("FormData")}}, {{domxref("URLSearchParams")}}, {{domxref("USVString")}} или {{domxref("ReadableStream")}} поэтому, для добавления объекта JSON в полезную нагрузку вам необходимо структурировать этот объект. -Вы можете получить этот запрос API, передав объект Request в качестве параметра для вызова {{domxref("WindowOrWorkerGlobalScope.fetch()")}}, например, и получить ответ: +Вы можете получить этот запрос API, передав объект Request в качестве параметра для вызова {{domxref("fetch()")}}, например, и получить ответ: ```js fetch(request) diff --git a/files/ru/web/api/response/index.md b/files/ru/web/api/response/index.md index 83b09de8ba9398..2189414dd94c00 100644 --- a/files/ru/web/api/response/index.md +++ b/files/ru/web/api/response/index.md @@ -7,7 +7,7 @@ slug: Web/API/Response Интерфейс **`Response`** из [Fetch API](/ru/docs/Web/API/Fetch_API) представляет собой ответ на запрос. -Вы можете создать новый экземпляр объекта `Response` используя конструктор {{domxref("Response.Response()")}}, но скорее всего вы столкнётесь с объектом `Response`, как результат какой-нибудь API операции — например, service worker {{domxref("Fetchevent.respondWith")}}, или {{domxref("WindowOrWorkerGlobalScope.fetch()")}}. +Вы можете создать новый экземпляр объекта `Response` используя конструктор {{domxref("Response.Response()")}}, но скорее всего вы столкнётесь с объектом `Response`, как результат какой-нибудь API операции — например, service worker {{domxref("Fetchevent.respondWith")}}, или {{domxref("fetch()")}}. ## Конструктор diff --git a/files/ru/web/api/setinterval/index.md b/files/ru/web/api/setinterval/index.md index a0478f211cb1c0..41646e9c950942 100644 --- a/files/ru/web/api/setinterval/index.md +++ b/files/ru/web/api/setinterval/index.md @@ -1,11 +1,11 @@ --- -title: WindowOrWorkerGlobalScope.setInterval() +title: Глобальная функция setInterval() slug: Web/API/setInterval --- -{{APIRef("HTML DOM")}} +{{APIRef("HTML DOM")}}{{AvailableInWorkers}} -Метод **`setInterval()`** предложен для {{domxref("Window")}} и {{domxref("Worker")}} интерфейсов. Он циклически вызывает функцию или участок кода с фиксированной паузой между каждым вызовом. Уникальный идентификатор intervalID, возвращаемый методом, позволяет впоследствии удалить запущенный **`setInterval`** c помощью {{domxref("WindowOrWorkerGlobalScope.clearInterval", "clearInterval()")}}. Метод определён с помощью миксина {{domxref("WindowOrWorkerGlobalScope")}}. +Метод **`setInterval()`** доступен из интерфейсов {{domxref("Window")}} и {{domxref("WorkerGlobalScope")}}. Он циклически вызывает функцию или участок кода с фиксированной паузой между каждым вызовом. Уникальный идентификатор intervalID, возвращаемый методом, позволяет впоследствии удалить запущенный **`setInterval`** c помощью {{domxref("clearInterval()")}}. ## Синтаксис @@ -29,9 +29,9 @@ var intervalID = scope.setInterval(code, delay); ### Возвращаемое значение -Возвращаемый `intervalID` представляет из себя ненулевое числовое значение, которое идентифицирует таймер, созданный вызовом `setInterval()`; Это значение может быть передано в {{domxref("WindowOrWorkerGlobalScope.clearInterval()")}} для отмены таймера. +Возвращаемый `intervalID` представляет из себя ненулевое числовое значение, которое идентифицирует таймер, созданный вызовом `setInterval()`; Это значение может быть передано в {{domxref("clearInterval()")}} для отмены таймера. -It may be helpful to be aware that `setInterval()` and {{domxref("WindowOrWorkerGlobalScope.setTimeout", "setTimeout()")}} share the same pool of IDs, and that `clearInterval()` and {{domxref("WindowOrWorkerGlobalScope.clearTimeout", "clearTimeout()")}} can technically be used interchangeably. For clarity, however, you should try to always match them to avoid confusion when maintaining your code. +It may be helpful to be aware that `setInterval()` and {{domxref("setTimeout()")}} share the same pool of IDs, and that `clearInterval()` and {{domxref("clearTimeout()")}} can technically be used interchangeably. For clarity, however, you should try to always match them to avoid confusion when maintaining your code. > **Примечание:** The `delay` parameter is converted to a signed 32-bit integer. This effectively limits `delay` to 2147483647 ms, since it's specified as a signed integer in the IDL. @@ -715,13 +715,13 @@ Returns a JavaScript [`Object`](/ru/docs/Web/JavaScript/Reference/Global_Objects The `setInterval()` function is commonly used to set a delay for functions that are executed again and again, such as animations. -You can cancel the interval using {{domxref("WindowOrWorkerGlobalScope.clearInterval()")}}. +You can cancel the interval using {{domxref("clearInterval()")}}. -If you wish to have your function called _once_ after the specified delay, use {{domxref("WindowOrWorkerGlobalScope.setTimeout()")}}. +If you wish to have your function called _once_ after the specified delay, use {{domxref("setTimeout()")}}. ### Ensure that execution duration is shorter than interval frequency -If there is a possibility that your logic could take longer to execute than the interval time, it is recommended that you recursively call a named function using {{domxref("WindowOrWorkerGlobalScope.setTimeout")}}. For example, if using `setInterval` to poll a remote server every 5 seconds, network latency, an unresponsive server, and a host of other issues could prevent the request from completing in its allotted time. As such, you may find yourself with queued up XHR requests that won't necessarily return in order. +If there is a possibility that your logic could take longer to execute than the interval time, it is recommended that you recursively call a named function using {{domxref("setTimeout")}}. For example, if using `setInterval` to poll a remote server every 5 seconds, network latency, an unresponsive server, and a host of other issues could prevent the request from completing in its allotted time. As such, you may find yourself with queued up XHR requests that won't necessarily return in order. In these cases, a recursive `setTimeout()` pattern is preferred: @@ -739,7 +739,7 @@ In the above snippet, a named function `loop()` is declared and is immediately e ### Throttling of intervals -`setInterval()` is subject to the same throttling restrictions in Firefox as {{domxref("WindowOrWorkerGlobalScope.setTimeout","setTimeout()")}}; see [Reasons for delays longer than specified](/ru/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout#Reasons_for_delays_longer_than_specified). +`setInterval()` is subject to the same throttling restrictions in Firefox as {{domxref("setTimeout()")}}; see [Reasons for delays longer than specified](/ru/docs/Web/API/setTimeout#Reasons_for_delays_longer_than_specified). ## Спецификации @@ -751,9 +751,8 @@ In the above snippet, a named function `loop()` is declared and is immediately e ## Смотрите также -- [JavaScript timers](/en-US/Add-ons/Code_snippets/Timers) -- {{domxref("WindowOrWorkerGlobalScope.setTimeout")}} -- {{domxref("WindowOrWorkerGlobalScope.clearTimeout")}} -- {{domxref("WindowOrWorkerGlobalScope.clearInterval")}} -- {{domxref("window.requestAnimationFrame")}} -- [_Daemons_ management](/en-US/Add-ons/Code_snippets/Timers/Daemons) +- [Полифил `setInterval`, позволяющий передавать параметры в функцию обратного вызова](https://github.com/zloirock/core-js#settimeout-and-setinterval) +- {{domxref("setTimeout()")}} +- {{domxref("clearTimeout()")}} +- {{domxref("clearInterval()")}} +- {{domxref("window.requestAnimationFrame()")}} diff --git a/files/ru/web/api/streams_api/index.md b/files/ru/web/api/streams_api/index.md index da8a2c17297026..ff1f70c88b4249 100644 --- a/files/ru/web/api/streams_api/index.md +++ b/files/ru/web/api/streams_api/index.md @@ -19,7 +19,7 @@ Streams API (API обработки потоков) позволяет прог Но это не все преимущества — вы можете отловить процессы старта и завершения потока, связывать потоки в цепочки, обрабатывать ошибки или прерывать их если это необходимо, реагировать на скорость с которой поток считывается. -Основное использование потоков крутиться вокруг создания ответов доступными в виде потоков. Например, тело ответа {{domxref("Body")}} возвращённого успешным [fetch запросом](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch) может быть представлено как {{domxref("ReadableStream")}}, и вы можете прочитать его используя ридер полученный методом {{domxref("ReadableStream.getReader()")}}, отменить его с помощью {{domxref("ReadableStream.cancel()")}}, и тп. +Основное использование потоков крутиться вокруг создания ответов доступными в виде потоков. Например, тело ответа {{domxref("Body")}} возвращённого успешным [fetch запросом](/ru/docs/Web/API/fetch) может быть представлено как {{domxref("ReadableStream")}}, и вы можете прочитать его используя ридер полученный методом {{domxref("ReadableStream.getReader()")}}, отменить его с помощью {{domxref("ReadableStream.cancel()")}}, и тп. Более сложные примеры задействуют создание ваших собственных потоков с помощью конструктора {{domxref("ReadableStream.ReadableStream", "ReadableStream()")}}, например чтобы обработать данные внутри [service worker](/ru/docs/Web/API/Service_Worker_API). @@ -57,9 +57,9 @@ Streams API (API обработки потоков) позволяет прог ### Дополнения к другим API - {{domxref("Request")}} - - : При создании нового объекта типа `Request`, вы можете добавить {{domxref("ReadableStream")}} в свойство `body` его словаря `RequestInit`. Этот объект типа `Request` может быть отправлен в {{domxref("WindowOrWorkerGlobalScope.fetch()")}}, чтобы начать загрузку потока. + - : При создании нового объекта типа `Request`, вы можете добавить {{domxref("ReadableStream")}} в свойство `body` его словаря `RequestInit`. Этот объект типа `Request` может быть отправлен в {{domxref("fetch()")}}, чтобы начать загрузку потока. - {{domxref("Body")}} - - : Ответ {{domxref("Body")}} возвращённый успешному [fetch запросу](/ru/docs/Web/API/WindowOrWorkerGlobalScope/fetch) вывешивается по умолчанию как {{domxref("ReadableStream")}}, и может иметь получателя прикреплённого к нему и тп. + - : Ответ {{domxref("Body")}} возвращённый успешному [fetch запросу](/ru/docs/Web/API/fetch) вывешивается по умолчанию как {{domxref("ReadableStream")}}, и может иметь получателя прикреплённого к нему и тп. ### Интерфейсы в дополнение к ByteStream diff --git a/files/ru/web/api/window/index.md b/files/ru/web/api/window/index.md index 8ec2c893833ed9..99e3e315e914f7 100644 --- a/files/ru/web/api/window/index.md +++ b/files/ru/web/api/window/index.md @@ -3,7 +3,7 @@ title: Window slug: Web/API/Window --- -{{APIRef}} +{{APIRef("DOM")}} Объект `window` представляет собой окно, содержащее DOM документ; свойство `document` указывает на [DOM document](/ru/docs/DOM/document), загруженный в данном окне. Окно текущего документа может быть получено с помощью свойства {{Domxref("document.defaultView")}}. @@ -13,12 +13,12 @@ slug: Web/API/Window ## Свойства -_Данный интерфейс наследует свойства из интерфейса {{domxref("EventTarget")}} и реализует свойства из {{domxref("WindowOrWorkerGlobalScope")}} и миксин {{domxref("WindowEventHandlers")}}._ +_Данный интерфейс наследует свойства из интерфейса {{domxref("EventTarget")}}._ Отметим, что свойства, являющиеся объектами (например, перезаписанные прототипы встроенных элементов), перечислены в отдельном разделе ниже. -- {{domxref("Window.applicationCache")}} {{readOnlyInline}} - - : Объект {{domxref("OfflineResourceList")}}, обеспечивающий для окна доступ к ресурсам вне сети. +- {{domxref("caches", "Window.caches")}} {{ReadOnlyInline}} + - : Возвращает объект {{domxref("CacheStorage")}}, связанный с текущим контекстом. Этот объект добавляет такой функционал как хранение ресурсов для использования вне сети и генерирования встроенных ответов на запросы. - {{domxref("Window.closed")}} {{Non-standard_inline}}{{readOnlyInline}} - : Свойство, указывающее было ли текущее окно закрыто или нет. - {{domxref("Window.Components")}} {{Non-standard_inline}} @@ -51,12 +51,14 @@ _Данный интерфейс наследует свойства из инт - : Не поддерживает с Gecko 13 (Firefox 13). Использовать вместо него{{domxref("Window.localStorage")}}. Было: Множественные объекты хранения, которые используются для хранения данных на нескольких страницах. - {{domxref("Window.history")}} {{ReadOnlyInline}} - : Возвращает ссылку на объект истории. +- {{domxref("indexedDB", "Window.indexedDB")}} {{ReadOnlyInline}} + - : Обеспечивает механизм для приложений для возможности асинхронного доступа индексированных баз данных; возвращает объект {{domxref("IDBFactory")}}. - {{domxref("Window.innerHeight")}} - : Получает высоту области содержимого окна браузера, включая, если есть, горизонтальный скроллбар. - {{domxref("window.innerWidth")}} - : Получает ширину области содержимого окна браузера, включая, если есть, вертикальный скроллбар. -- {{domxref("Window.isSecureContext")}} {{readOnlyInline}} - - : Указывает, способен ли контекст использовать функциональность, требующую безопасного контекста. +- {{domxref("isSecureContext", "Window.isSecureContext")}} {{ReadOnlyInline}} + - : Возвращает булевское значение, указывающее является ли текущий контент безопасным (`true`) или нет (`false`). - {{domxref("Window.length")}} {{readOnlyInline}} - : Возвращает число фреймов в окне. Смотрите также {{domxref("window.frames")}}. - {{domxref("Window.location")}} {{ReadOnlyInline}} @@ -83,6 +85,8 @@ _Данный интерфейс наследует свойства из инт - : Возвращает ссылку на объект навигатора. - {{domxref("Window.opener")}} - : Возвращает ссылку на окно, открывшее текущее окно. +- {{domxref("origin", "Window.origin")}} {{ReadOnlyInline}} + - : Возвращает источник глобального объекта в виде строки. - {{domxref("Window.orientation")}}{{non-standard_inline}}{{deprecated_inline}}{{readOnlyInline}} - : Возвращает ориентировку в градусах (с увеличением на 90 градусов) окна просмотра относительно настоящей ориентировки устройства. - {{domxref("Window.outerHeight")}} {{readOnlyInline}} @@ -142,29 +146,26 @@ _Данный интерфейс наследует свойства из инт - `window[0]`, `window[1]`, etc. - : Возвращает ссылку на объект окна во фреймах. Смотри {{domxref("Window.frames")}}. -### Свойства, реализованные из других мест - -- {{domxref("WindowOrWorkerGlobalScope.caches")}} {{readOnlyinline}} - - : Возвращает объект {{domxref("CacheStorage")}}, связанный с текущим контекстом. Этот объект добавляет такой функционал как хранение ресурсов для использования вне сети и генерирования встроенных ответов на запросы. -- {{domxref("WindowOrWorkerGlobalScope.indexedDB")}} {{readonlyInline}} - - : Обеспечивает механизм для приложений для возможности асинхронного доступа индексированных баз данных; возвращает объект {{domxref("IDBFactory")}}. -- {{domxref("WindowOrWorkerGlobalScope.isSecureContext")}} {{readOnlyinline}} - - : Возвращает булевское значение, указывающее является ли текущий контент безопасным (`true`) или нет (`false`). -- {{domxref("WindowOrWorkerGlobalScope.origin")}} {{readOnlyinline}} - - : Возвращает источник глобального объекта, преобразованного в строку. (Это свойство пока ещё не существует, поэтому не может быть использовано в браузерах.) - ## Методы -_Этот интерфейс наследует методы от интерфейса {{domxref("EventTarget")}} и реализует свойства {{domxref("WindowOrWorkerGlobalScope")}} и {{domxref("EventTarget")}}._ +_Этот интерфейс наследует методы от интерфейса {{domxref("EventTarget")}}._ +- {{domxref("atob", "Window.atob()")}} + - : Декодирует строку данных, которая была закодирована, используя кодировку base-64. - {{domxref("Window.alert()")}} - : Отображает предупреждающее диалоговое окно. - {{domxref("Window.back()")}} {{Non-standard_inline}} - : Возвращается на один шаг назад в истории окна. - {{domxref("Window.blur()")}} - : Убирает фокус с окна. +- {{domxref("btoa", "Window.btoa()")}} + - : Создать закодированную base-64 ASCII строку из строки бинарных данных. - {{domxref("Window.cancelIdleCallback()")}} {{experimental_inline}} - : Позволяет отменить колбэк-функцию прежде чем определить расписание её вызова с {{domxref("Window.requestIdleCallback")}}. +- {{domxref("clearInterval", "Window.clearInterval()")}} + - : Отменяет повторяющееся исполнение, установленного с помощью {{domxref("setInterval()")}}. +- {{domxref("clearTimeout()", "Window.clearTimeout()")}} + - : Отменяет отложенное исполнение, установленного с {{domxref("setTimeout()")}}. - {{domxref("Window.captureEvents()")}} {{Deprecated_inline}} - : Регистрирует окно, которое будет перехватывать все события определённого типа. - {{domxref("Window.clearImmediate()")}} @@ -177,12 +178,16 @@ _Этот интерфейс наследует методы от интерфе - : Закрывает текущее окно. - {{domxref("Window.confirm()")}} - : Отображает диалог с сообщением, на которое пользователь должен ответить. +- {{domxref("createImageBitmap", "Window.createImageBitmap()")}} + - : Принимает множество различных изображений и возвращает {{domxref("Promise")}}, который возвращает {{domxref("ImageBitmap")}}. Опционально ресурс может быть обрезан до прямоугольника, заданного в пикселях _(sx, sy)_ с шириной sw и высотой sh. - {{domxref("Window.disableExternalCapture()")}} - : {{todo("NeedsContents")}} - {{domxref("Window.dispatchEvent()")}} - : Используется для вызова события. - {{domxref("Window.dump()")}} - : Отправляет сообщение в консоль. +- {{domxref("fetch", "Window.fetch()")}} + - : Начинает процесс загрузки ресурса из сети. - {{domxref("Window.enableExternalCapture()")}} - : {{todo("NeedsContents")}} - {{domxref("Window.find()")}} @@ -249,6 +254,10 @@ _Этот интерфейс наследует методы от интерфе - : Прокручивает документ на данное число страниц. - {{domxref("Window.scrollTo()")}} - : Прокручивает до заданных координат в документе. +- {{domxref("setInterval", "Window.setInterval()")}} + - : Устанавливает расписание для исполнения функции каждый раз через заданное число миллисекунд. +- {{domxref("setTimeout()", "Window.setTimeout()")}} + - : Устанавливает расписание для исполнения функции в назначенное время. - {{domxref("Window.setCursor()")}} - : Меняет курсор для текущего окна. - {{domxref("Window.setImmediate()")}} @@ -268,38 +277,9 @@ _Этот интерфейс наследует методы от интерфе - {{domxref("Window.updateCommands()")}} - : Обновляет состояние команд текущего окна chrome (UI). -### Методы, реализованные из других мест - -- {{domxref("EventTarget.addEventListener()")}} - - - : Регистрирует обработчики определённого типа событий в окне. - -- {{domxref("WindowOrWorkerGlobalScope.atob()")}} - - : Декодирует строку данных, которая была закодирована, используя кодировку base-64. -- {{domxref("WindowOrWorkerGlobalScope.btoa()")}} - - : Создать закодированную base-64 ASCII строку из строки бинарных данных. -- {{domxref("WindowOrWorkerGlobalScope.clearInterval()")}} - - : Отменяет повторяющееся исполнение, установленного с помощью {{domxref("WindowOrWorkerGlobalScope.setInterval()")}}. -- {{domxref("WindowOrWorkerGlobalScope.clearTimeout()")}} - - : Отменяет отложенное исполнение, установленного с {{domxref("WindowOrWorkerGlobalScope.setTimeout()")}}. -- {{domxref("WindowOrWorkerGlobalScope.createImageBitmap()")}} - - : Принимает множество различных изображений и возвращает {{domxref("Promise")}}, который возвращает {{domxref("ImageBitmap")}}. Опционально ресурс может быть обрезан до прямоугольника, заданного в пикселях _(sx, sy)_ с шириной sw и высотой sh. -- {{domxref("WindowOrWorkerGlobalScope.fetch()")}} - - : Начинает процесс загрузки ресурса из сети. -- {{domxref("EventTarget.removeEventListener")}} - - : Удаляет обработчик события из окна. -- {{domxref("WindowOrWorkerGlobalScope.setInterval()")}} - - : Устанавливает расписание для исполнения функции каждый раз через заданное число миллисекунд. -- {{domxref("WindowOrWorkerGlobalScope.setTimeout()")}} - - : Устанавливает расписание для исполнения функции в назначенное время. - ## Обработчики событий -Это методы объекта window, которые могут устанавливаться для перехвата всех событий, которые могут происходить с объектом window. - -Интерфейс наследует обработчики событий от _{{domxref("EventTarget")}}_ интерфейса и реализует обработчики событий _{{domxref("WindowEventHandlers")}}._ - -> **Примечание:** Начиная с Gecko 9.0, вы можете использовать синтаксис `if ("onabort" in window),` чтобы определить существует ли обработчик данного события. Интерфейсы обработчиков событий были обновлены таким образом, чтобы соответствовать web IDL интерфейсам. Смотри [обработчики событий DOM](/ru/docs/DOM/DOM_event_handlers) для деталей. +Подписываться на события можно с помощью [`addEventListener()`](/ru/docs/Web/API/EventTarget/addEventListener) или присваивая обработчик события свойству `oneventname`. В дополнение к событиям, перечисленным ниже, события могут всплывать из {{domxref("Document")}} глобального объекта. - {{domxref("GlobalEventHandlers.onabort")}} - : Обработчик события для отмены событий в окне. diff --git a/files/ru/webassembly/javascript_interface/compilestreaming/index.md b/files/ru/webassembly/javascript_interface/compilestreaming/index.md index 7171881fc2c5f1..b3e0a6cedc00c1 100644 --- a/files/ru/webassembly/javascript_interface/compilestreaming/index.md +++ b/files/ru/webassembly/javascript_interface/compilestreaming/index.md @@ -30,7 +30,7 @@ Promise WebAssembly.compileStreaming(source); ## Примеры Следующий пример (см. Нашу демонстрацию [compile-streaming.html](https://github.com/mdn/webassembly-examples/blob/master/js-api-examples/compile-streaming.html) на GitHub и [view it live](https://mdn.github.io/webassembly-examples/js-api-examples/compile-streaming.html)) напрямую передаёт модуль .wasm из исходника, затем компилирует его в объект {{jsxref("WebAssembly.Module")}}. -Поскольку функция `compileStreaming()` принимает промис для объекта {{domxref("Response")}}, вы можете напрямую передать ему вызов {{domxref("WindowOrWorkerGlobalScope.fetch()")}}, и он передаст ответ в выполняемую функцию. +Поскольку функция `compileStreaming()` принимает промис для объекта {{domxref("Response")}}, вы можете напрямую передать ему вызов {{domxref("fetch()")}}, и он передаст ответ в выполняемую функцию. ```js var importObject = { imports: { imported_func: (arg) => console.log(arg) } };