diff options
Diffstat (limited to 'files')
38 files changed, 122 insertions, 122 deletions
diff --git a/files/ru/conflicting/web/javascript/reference/global_objects/promise/index.html b/files/ru/conflicting/web/javascript/reference/global_objects/promise/index.html index fff1aa118b..e0459a437d 100644 --- a/files/ru/conflicting/web/javascript/reference/global_objects/promise/index.html +++ b/files/ru/conflicting/web/javascript/reference/global_objects/promise/index.html @@ -3,7 +3,7 @@ title: Promise.prototype slug: conflicting/Web/JavaScript/Reference/Global_Objects/Promise tags: - JavaScript - - Обещание + - Промис - Свойство translation_of: Web/JavaScript/Reference/Global_Objects/Promise translation_of_original: Web/JavaScript/Reference/Global_Objects/Promise/prototype @@ -17,22 +17,22 @@ original_slug: Web/JavaScript/Reference/Global_Objects/Promise/prototype <h2 id="Описание">Описание</h2> -<p>{{jsxref("Promise")}} объект наследованный от {{jsxref("Promise.prototype")}}. Вы можете использовать прототип конструктора чтобы добавлять свойства или методы во все объекты обещаний.</p> +<p>{{jsxref("Promise")}} объект наследованный от {{jsxref("Promise.prototype")}}. Вы можете использовать прототип конструктора чтобы добавлять свойства или методы во все объекты промисов.</p> <h2 id="Свойства">Свойства</h2> <dl> <dt><code>Promise.prototype.constructor</code></dt> - <dd>Возвращает функцию, которая создала прототип экземпляра. Это функция всех обещаний по умолчанию.</dd> + <dd>Возвращает функцию, которая создала прототип экземпляра. Это функция всех промисов по умолчанию.</dd> </dl> <h2 id="Методы">Методы</h2> <dl> <dt>{{jsxref("Promise.catch", "Promise.prototype.catch(onRejected)")}}</dt> - <dd>Добавляет колбэк-функцию для обработки отклонения обещания, которая возвращает новое обещание выполненное с переданным значением, если она вызвана, или оригинальное значение resolve, если обещание выполнено.</dd> + <dd>Добавляет колбэк-функцию для обработки отклонения промиса, которая возвращает новый промис выполненный с переданным значением, если он вызван, или оригинальное значение resolve, если промис выполнен.</dd> <dt>{{jsxref("Promise.then", "Promise.prototype.then(onFulfilled, onRejected)")}}</dt> - <dd style="margin-bottom: 0.5cm;">Добавляет обработчик выполнения и отклонения обещания, и возвращает новое обещание выполненное со значением вызванного обработчика, или оригинальное значение, если обещание не было обработано (т.е. если соответствующий обработчик onFulfilled или onRejected не является функцией).</dd> + <dd style="margin-bottom: 0.5cm;">Добавляет обработчик выполнения и отклонения промиса, и возвращает новый промис выполненный со значением вызванного обработчика, или оригинальное значение, если промис не был обработан (т.е. если соответствующий обработчик onFulfilled или onRejected не является функцией).</dd> </dl> <h2 id="Спецификация">Спецификация</h2> diff --git a/files/ru/glossary/promise/index.html b/files/ru/glossary/promise/index.html index 643f180604..82fe225267 100644 --- a/files/ru/glossary/promise/index.html +++ b/files/ru/glossary/promise/index.html @@ -7,7 +7,7 @@ tags: translation_of: Glossary/Promise original_slug: Словарь/Promise --- -<p>A <strong>{{jsxref("Promise")}}</strong> - это {{Glossary("Object")}}, возвращаемый {{Glossary("function")}}, которая ещё не завершила свою работу. Promise буквально представляет собой 'обещание' функции в итоге вернуть результат через объект промиса.</p> +<p><strong>{{jsxref("Promise")}}</strong> - это {{Glossary("Object")}}, возвращаемый {{Glossary("function")}}, которая ещё не завершила свою работу. Промис буквально представляет собой "обещание", сделанное функцией, которая через объект промиса вернет результат.</p> <p>Когда вызванная функция {{Glossary("asynchronous", "asynchronously")}} завершает работу, вызывается функция объекта промиса, называемая обработчиком решения (или выполнения, или завершения) чтобы исходный объект вызова знал, что задача выполнена</p> diff --git a/files/ru/learn/javascript/asynchronous/async_await/index.html b/files/ru/learn/javascript/asynchronous/async_await/index.html index d51b0c0f24..a6fa73aa65 100644 --- a/files/ru/learn/javascript/asynchronous/async_await/index.html +++ b/files/ru/learn/javascript/asynchronous/async_await/index.html @@ -320,7 +320,7 @@ displayContent() ... }</pre> -<p>В каждом примере функция записывает время начала исполнения и сколько времени понадобилось на исполнение <code>timeTest()</code> промисов, вычитая время в момент запуска функции из времени в момент разрешения обещаний:</p> +<p>В каждом примере функция записывает время начала исполнения и сколько времени понадобилось на исполнение <code>timeTest()</code> промисов, вычитая время в момент запуска функции из времени в момент разрешения промисов:</p> <pre class="brush: js notranslate">let startTime = Date.now(); timeTest().then(() => { diff --git a/files/ru/learn/javascript/asynchronous/introducing/index.html b/files/ru/learn/javascript/asynchronous/introducing/index.html index 5783228cff..ddb5901ef2 100644 --- a/files/ru/learn/javascript/asynchronous/introducing/index.html +++ b/files/ru/learn/javascript/asynchronous/introducing/index.html @@ -86,7 +86,7 @@ let blob = response.blob(); <p>Это происходит потому что вы не знаете сколько времени займёт загрузка картинки, следовательно, когда вы начнёте выполнять вторую строку кода, сгенерируется ошибка (возможно, периодически, возможно, каждый раз), потому что <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">response</span></font> ещё не доступен. Вместо этого, ваш код должен дождаться возвращения <font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.5);">response</span></font> до того, как попытается выполнить дальнейшие инструкции.</p> -<p>Есть два типа стиля асинхронного кода, с которыми вы столкнётесь в коде JavaScript, старый метод — callbacks (колбэки) и более новый — promise (промисы, обещания). В следующих разделах мы познакомимся с каждым из них. </p> +<p>Есть два типа стиля асинхронного кода, с которыми вы столкнётесь в коде JavaScript, старый метод — колбэки (callbacks) и более новый — промисы (promises). В следующих разделах мы познакомимся с каждым из них. </p> <h2 id="Асинхронные_колбэки">Асинхронные колбэки</h2> @@ -161,7 +161,7 @@ gods.forEach(function (eachName, index){ <p><strong>Примечание</strong>: вы можете посмотреть законченную версию на github (<a href="https://github.com/mdn/learning-area/blob/master/javascript/apis/fetching-data/can-store-xhr/can-script.js">посмотрите исходный код</a> и <a href="https://mdn.github.io/learning-area/javascript/apis/fetching-data/can-store-xhr/">запустите пример</a>).</p> </div> -<p>В примере видно, как <code>fetch()</code> принимает один параметр — URL ресурса, который нужно получить из сети, — и возвращает <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">промис</a>. Промис или обещание — это объект, представляющий асинхронную операцию, выполненную удачно или неудачно. Он представляет собой как бы промежуточное состояние. По сути, это способ браузера сказать: "я обещаю вернуться к вам с ответом как можно скорее," отсюда и название "обещание."</p> +<p>В примере видно, как <code>fetch()</code> принимает один параметр — URL ресурса, который нужно получить из сети, — и возвращает <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">промис</a>. Промис — это объект, представляющий асинхронную операцию, выполненную удачно или неудачно. Он представляет собой как бы промежуточное состояние. По сути, это способ браузера сказать: "я обещаю вернуться к вам с ответом как можно скорее", поэтому в дословном переводе "промис" (promise) означает "обещание".</p> <p>Может понадобиться много времени, чтобы привыкнуть к данной концепции; это немного напоминает {{interwiki("wikipedia", "Кот Шрёдингера")}} в действии. Ни один из возможных результатов ещё не произошёл, поэтому операция fetch в настоящее время ожидает результата. Далее у нас есть три блока кода следующих сразу после <code>fetch()</code>:</p> diff --git a/files/ru/learn/javascript/client-side_web_apis/client-side_storage/index.html b/files/ru/learn/javascript/client-side_web_apis/client-side_storage/index.html index 14399cf1bc..940cbe5333 100644 --- a/files/ru/learn/javascript/client-side_web_apis/client-side_storage/index.html +++ b/files/ru/learn/javascript/client-side_web_apis/client-side_storage/index.html @@ -692,7 +692,7 @@ Promise.all([mp4Blob, webmBlob]).then(function(values) { <h4 id="Регистрируем_сервис_воркер">Регистрируем сервис воркер</h4> -<p>Первое, что нужно заметить, это дополнительный кусок кода, расположенный в основном JavaScript файле (см. <a href="https://github.com/mdn/learning-area/blob/master/javascript/apis/client-side-storage/cache-sw/video-store-offline/index.js">index.js</a>). Первое,что мы делаем, это проверка на то, что <code>serviceWorker</code> доступен в объекте {{domxref("Navigator")}}. Если этот так, тогда мы знаем, что как минимум, базовые функции сервис-воркера доступны. Внутри проверки мы используем метод {{domxref("ServiceWorkerContainer.register()")}} для регистрации сервис-воркера, находящегося в файле <code>sw.js</code> на текущем источнике, таким образом, он может управлять страницами в текущей или внутренних директориях. Когда обещание выполнится, сервис-воркер считается зарегистрированным.</p> +<p>Первое, что нужно заметить, это дополнительный кусок кода, расположенный в основном JavaScript файле (см. <a href="https://github.com/mdn/learning-area/blob/master/javascript/apis/client-side-storage/cache-sw/video-store-offline/index.js">index.js</a>). Первое,что мы делаем, это проверка на то, что <code>serviceWorker</code> доступен в объекте {{domxref("Navigator")}}. Если этот так, тогда мы знаем, что как минимум, базовые функции сервис-воркера доступны. Внутри проверки мы используем метод {{domxref("ServiceWorkerContainer.register()")}} для регистрации сервис-воркера, находящегося в файле <code>sw.js</code> на текущем источнике, таким образом, он может управлять страницами в текущей или внутренних директориях. Когда промис выполнится, сервис-воркер считается зарегистрированным.</p> <pre class="brush: js notranslate"> // Регистрация сервис-воркера для обеспечения доступности сайта в офлайне @@ -714,7 +714,7 @@ Promise.all([mp4Blob, webmBlob]).then(function(values) { <p>Внутри обработчика <code>install</code> мы используем метод {{domxref("ExtendableEvent.waitUntil()")}}, доступном в объекте события, чтобы сигнализировать, что работа продолжается, и браузер не должен завершать установку, пока все задачи внутри блока не будут выполнены.</p> -<p>Здесь мы видим Cache API в действии. Мы используем метод {{domxref("CacheStorage.open()")}} для открытия нового объекта кеша, в котором ответы могут быть сохранены (похоже на объект хранилища IndexedDB). Обещание выполнится с объектом {{domxref("Cache")}}, представляющим собой кеш <code>video-store</code> . Затем мы используем метод {{domxref("Cache.addAll()")}} для получения ресурсов и добавления ответов в кеш.</p> +<p>Здесь мы видим Cache API в действии. Мы используем метод {{domxref("CacheStorage.open()")}} для открытия нового объекта кеша, в котором ответы могут быть сохранены (похоже на объект хранилища IndexedDB). Промис выполнится с объектом {{domxref("Cache")}}, представляющим собой кеш <code>video-store</code> . Затем мы используем метод {{domxref("Cache.addAll()")}} для получения ресурсов и добавления ответов в кеш.</p> <pre class="brush: js notranslate">self.addEventListener('install', function(e) { e.waitUntil( @@ -739,7 +739,7 @@ Promise.all([mp4Blob, webmBlob]).then(function(values) { <p>Внутри обработчика, мы сначала выводим в консоль URL запрашиваемого ресурса. Затем отдаём особый ответ на запрос, используя метод {{domxref("FetchEvent.respondWith()")}}.</p> -<p>Внутри блока мы используем {{domxref("CacheStorage.match()")}} чтобы проверить, можно ли найти соответствующий запрос (т.е. совпадение по URL) в кеше. Обещание возвращает найденный ответ или <code>undefined</code>, если ничего не нашлось.</p> +<p>Внутри блока мы используем {{domxref("CacheStorage.match()")}} чтобы проверить, можно ли найти соответствующий запрос (т.е. совпадение по URL) в кеше. Промис возвращает найденный ответ или <code>undefined</code>, если ничего не нашлось.</p> <p>Если совпадение нашлось, то просто возвращаем его как особый ответ. В противном случае, используем <a href="/en-US/docs/Web/API/WindowOrWorkerGlobalScope/fetch">fetch()</a> для запроса ресурса из сети.</p> diff --git a/files/ru/learn/javascript/client-side_web_apis/fetching_data/index.html b/files/ru/learn/javascript/client-side_web_apis/fetching_data/index.html index 3233a93ae6..33ef587cb5 100644 --- a/files/ru/learn/javascript/client-side_web_apis/fetching_data/index.html +++ b/files/ru/learn/javascript/client-side_web_apis/fetching_data/index.html @@ -192,19 +192,19 @@ request.send();</pre> <p>Прежде всего, мы вызываем метод {{domxref("WorkerOrWindowGlobalScope.fetch()", "fetch()")}}, передавая ему URL-адрес ресурса, который мы хотим получить. Это современный эквивалент {{domxref("XMLHttpRequest.open", "request.open()")}} в XHR, плюс вам не нужен эквивалент <code>.send()</code>.</p> -<p>После этого вы можете увидеть метод {{jsxref("Promise.then", ".then()")}}, прикреплённый в конец <code>fetch()</code> - этот метод является частью {{jsxref("Promise","Promises")}} - современная функция JavaScript для выполнения асинхронных операций. <code>fetch()</code> возвращает обещание, которое разрешает ответ, отправленный обратно с сервера, - мы используем <code>.then()</code> для запуска некоторого последующего кода после того, как обещание будет разрешено, что является функцией, которую мы определили внутри неё. Это эквивалент обработчика события <code>onload</code> в XHR-версии.</p> +<p>После этого вы можете увидеть метод {{jsxref("Promise.then", ".then()")}}, прикреплённый в конец <code>fetch()</code> - этот метод является частью {{jsxref("Promise","Promises")}} - современная функция JavaScript для выполнения асинхронных операций. <code>fetch()</code> возвращает промис, который разрешает ответ, отправленный обратно с сервера, - мы используем <code>.then()</code> для запуска некоторого последующего кода после того, как промис будет разрешено, что является функцией, которую мы определили внутри неё. Это эквивалент обработчика события <code>onload</code> в XHR-версии.</p> <p>Эта функция автоматически передаёт ответ от сервера в качестве параметра, когда обещает <code>fetch()</code>. Внутри функции мы берём ответ и запускаем его метод {{domxref("Body.text", "text()")}}, который в основном возвращает ответ как необработанный текст. Это эквивалент <code>request.responseType = 'text'</code> в версии XHR.</p> -<p>Вы увидите, что <code>text()</code>также возвращает обещание, поэтому мы привязываем к нему другой <code>.then()</code>, внутри которого мы определяем функцию для получения необработанного текста, который обещает решение <code>text()</code>.</p> +<p>Вы увидите, что <code>text()</code> также возвращает промис, поэтому мы привязываем к нему другой <code>.then()</code>, внутри которого мы определяем функцию для получения необработанного текста, который выполняет <code>text()</code>.</p> -<p>Внутри функции внутреннего обещания мы делаем то же самое, что и в версии XHR, - устанавливаем текстовое содержимое {{htmlelement("pre")}} в текстовое значение.</p> +<p>Внутри функции внутреннего промиса мы делаем то же самое, что и в версии XHR, - устанавливаем текстовое содержимое {{htmlelement("pre")}} в текстовое значение.</p> -<h3 id="Помимо_обещаний">Помимо обещаний</h3> +<h3 id="Помимо_промисов">Помимо промисов</h3> -<p>Обещания немного запутывают первый раз, когда вы их встречаете, но не беспокойтесь об этом слишком долго. Через некоторое время вы привыкнете к ним, особенно, когда вы узнаете больше о современных JavaScript-API. Большинство из них в большей степени основаны на обещаниях.</p> +<p>Промисы немного запутывают первый раз, когда вы их встречаете, но не беспокойтесь об этом слишком долго. Через некоторое время вы привыкнете к ним, особенно, когда вы узнаете больше о современных JavaScript-API. Большинство из них в большей степени основаны на промисах.</p> -<p>Давайте посмотрим на структуру обещаний сверху, чтобы увидеть, можем ли мы ещё немного понять это:</p> +<p>Давайте посмотрим на структуру промисов сверху, чтобы увидеть, можем ли мы ещё немного понять это:</p> <pre class="brush: js">fetch(url).then(function(response) { response.text().then(function(text) { @@ -212,9 +212,9 @@ request.send();</pre> }); });</pre> -<p>В первой строке говорится: «Получить ресурс, расположенный по адресу url» <code>(fetch(url)</code>) и «затем запустить указанную функцию, когда обещание будет разрешено» (<code>.then(function() { ... })</code>). «Resolve» означает «завершить выполнение указанной операции в какой-то момент в будущем». Указанная операция в этом случае заключается в извлечении ресурса с указанного URL (с использованием HTTP-запроса) и возврата ответа для нас, чтобы что-то сделать.</p> +<p>В первой строке говорится: «Получить ресурс, расположенный по адресу url» <code>(fetch(url)</code>) и «затем запустить указанную функцию, когда промис будет разрешено» (<code>.then(function() { ... })</code>). «Resolve» означает «завершить выполнение указанной операции в какой-то момент в будущем». Указанная операция в этом случае заключается в извлечении ресурса с указанного URL (с использованием HTTP-запроса) и возврата ответа для нас, чтобы что-то сделать.</p> -<p>Фактически, функция, переданная в <code>then()</code>, представляет собой кусок кода, который не запускается немедленно - вместо этого он будет работать в какой-то момент в будущем, когда ответ будет возвращён. Обратите внимание, что вы также можете сохранить своё обещание в переменной и цепочку {{jsxref("Promise.then", ".then()")}} вместо этого. Ниже код будет делать то же самое:</p> +<p>Фактически, функция, переданная в <code>then()</code>, представляет собой кусок кода, который не запускается немедленно - вместо этого он будет работать в какой-то момент в будущем, когда ответ будет возвращён. Обратите внимание, что вы также можете сохранить своё промис в переменной и цепочку {{jsxref("Promise.then", ".then()")}} вместо этого. Ниже код будет делать то же самое:</p> <pre class="brush: js">var myFetch = fetch(url); @@ -224,7 +224,7 @@ myFetch.then(function(response) { }); });</pre> -<p>Поскольку метод <code>fetch()</code> возвращает обещание, которое разрешает HTTP-ответ, любая функция, которую вы определяете внутри <code>.then()</code>, прикованная к концу, будет автоматически передаваться как параметр. Вы можете вызвать параметр, который вам нравится - приведённый ниже пример будет работать:</p> +<p>Поскольку метод <code>fetch()</code> возвращает промис, который разрешает HTTP-ответ, любая функция, которую вы определяете внутри <code>.then()</code>, прикованная к концу, будет автоматически передаваться как параметр. Вы можете вызвать параметр, который вам нравится - приведённый ниже пример будет работать:</p> <pre class="brush: js">fetch(url).then(function(dogBiscuits) { dogBiscuits.text().then(function(text) { @@ -242,9 +242,9 @@ myFetch.then(function(response) { }); }</pre> -<p>Объект ответа имеет метод {{domxref("Body.text", "text()")}}, который берёт необработанные данные, содержащиеся в теле ответа, и превращает его в обычный текст, который является форматом, который мы хотим в нем А также возвращает обещание (которое разрешает полученную текстовую строку), поэтому здесь мы используем другой {{jsxref("Promise.then", ".then()")}}, внутри которого мы определяем другую функцию, которая диктует что мы хотим сделать с этой текстовой строкой. Мы просто устанавливаем свойство <code><a href="https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent">textContent</a></code> элемента {{htmlelement("pre")}} нашего стихотворения равным текстовой строке, так что это получается довольно просто.</p> +<p>Объект ответа имеет метод {{domxref("Body.text", "text()")}}, который берёт необработанные данные, содержащиеся в теле ответа, и превращает его в обычный текст, который является форматом, который мы хотим в нем А также возвращает промис (который разрешает полученную текстовую строку), поэтому здесь мы используем другой {{jsxref("Promise.then", ".then()")}}, внутри которого мы определяем другую функцию, которая диктует что мы хотим сделать с этой текстовой строкой. Мы просто устанавливаем свойство <code><a href="https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent">textContent</a></code> элемента {{htmlelement("pre")}} нашего стихотворения равным текстовой строке, так что это получается довольно просто.</p> -<p>Также стоит отметить, что вы можете напрямую связывать несколько блоков обещаний (<code>.then()</code>, но есть и другие типы) на конце друг друга, передавая результат каждого блока следующему блоку по мере продвижения по цепочке , Это делает обещания очень мощными.</p> +<p>Также стоит отметить, что вы можете напрямую связывать несколько блоков промисов (<code>.then()</code>, но есть и другие типы) на конце друг друга, передавая результат каждого блока следующему блоку по мере продвижения по цепочке , Это делает промисы очень мощными.</p> <p>Следующий блок делает то же самое, что и наш оригинальный пример, но написан в другом стиле:</p> @@ -254,7 +254,7 @@ myFetch.then(function(response) { poemDisplay.textContent = text; });</pre> -<p>Многие разработчики любят этот стиль больше, поскольку он более плоский и, возможно, легче читать для более длинных цепочек обещаний - каждое последующее обещание приходит после предыдущего, а не внутри предыдущего (что может стать громоздким). Единственное отличие состоит в том, что мы должны были включить оператор <code><a href="https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/Return_values">return</a></code> перед <code>response.text()</code>, чтобы заставить его передать результат в следующую ссылку в цепочке.</p> +<p>Многие разработчики любят этот стиль больше, поскольку он более плоский и, возможно, легче читать для более длинных цепочек промисов - каждое последующее промис приходит после предыдущего, а не внутри предыдущего (что может стать громоздким). Единственное отличие состоит в том, что мы должны были включить оператор <code><a href="https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Building_blocks/Return_values">return</a></code> перед <code>response.text()</code>, чтобы заставить его передать результат в следующую ссылку в цепочке.</p> <h3 id="Какой_механизм_следует_использовать">Какой механизм следует использовать?</h3> @@ -289,9 +289,9 @@ myFetch.then(function(response) { } });</pre> -<p>Это похоже на то, что мы видели раньше, за исключением того, что второе обещание находится в условном выражении. В этом случае мы проверяем, был ли возвращённый ответ успешным - свойство {{domxref("response.ok")}} содержит логическое значение, которое <code>true</code>, если ответ был в порядке (например, <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/200">200 meaning "OK"</a>) или <code>false</code>, если он не увенчался успехом.</p> +<p>Это похоже на то, что мы видели раньше, за исключением того, что второй промис находится в условном выражении. В этом случае мы проверяем, был ли возвращённый ответ успешным - свойство {{domxref("response.ok")}} содержит логическое значение, которое <code>true</code>, если ответ был в порядке (например, <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/200">200 meaning "OK"</a>) или <code>false</code>, если он не увенчался успехом.</p> -<p>Если ответ был успешным, мы выполняем второе обещание - на этот раз мы используем {{domxref("Body.json", "json()")}}, а не {{domxref("Body.text", "text()")}}, так как мы хотим вернуть наш ответ как структурированные данные JSON, а не обычный текст.</p> +<p>Если ответ был успешным, мы выполняем второй промис - на этот раз мы используем {{domxref("Body.json", "json()")}}, а не {{domxref("Body.text", "text()")}}, так как мы хотим вернуть наш ответ как структурированные данные JSON, а не обычный текст.</p> <p>Если ответ не увенчался успехом, мы выводим сообщение об ошибке в консоль, в котором сообщается о сбое сетевого запроса, который сообщает о статусе сети и описательном сообщении ответа (содержащемся в {{domxref("response.status")}} и {{domxref("response.statusText")}}, соответственно). Конечно, полный веб-сайт будет обрабатывать эту ошибку более грациозно, отображая сообщение на экране пользователя и, возможно, предлагая варианты для исправления ситуации.</p> @@ -334,7 +334,7 @@ myFetch.then(function(response) { <li>Вам в основном нужно использовать тот же шаблон, что и раньше, в примере <a href="https://github.com/mdn/learning-area/blob/master/javascript/apis/fetching-data/xhr-basic.html">XHR-basic.html</a>.</li> <li>Однако вам нужно будет добавить обработку ошибок, которые мы показали вам в версии Fetch Can Store: <ul> - <li>Ответ найден в <code>request.response</code> после того, как событие <code>load</code> запущено, а не в обещании <code>then()</code>.</li> + <li>Ответ найден в <code>request.response</code> после того, как событие <code>load</code> запущено, а не в промисе <code>then()</code>.</li> <li>О наилучшем эквиваленте Fetch's <code>response.ok</code> в XHR следует проверить, является ли {{domxref("XMLHttpRequest.status","request.status")}} равным 200 или если {{domxref("XMLHttpRequest.readyState","request.readyState")}} равно 4.</li> <li>Свойства для получения статуса и сообщения состояния одинаковы, но они находятся на объекте <code>request</code> (XHR), а не в объекте <code>response</code>.</li> </ul> diff --git a/files/ru/learn/javascript/client-side_web_apis/introduction/index.html b/files/ru/learn/javascript/client-side_web_apis/introduction/index.html index 0645247fd8..5e2895d615 100644 --- a/files/ru/learn/javascript/client-side_web_apis/introduction/index.html +++ b/files/ru/learn/javascript/client-side_web_apis/introduction/index.html @@ -153,7 +153,7 @@ myGeo.getCurrentPosition(function(position) { ... });</pre> <pre class="brush: js example-bad notranslate">var position = navigator.geolocation.getCurrentPosition(); var myLatitude = position.coords.latitude;</pre> -<p>Если первая строка ещё не вернула результат, вторая вызовет ошибку из-за того, что данные геолокации ещё не стали доступны. По этой причине, API, использующие асинхронные операции, разрабатываются с использованием {{glossary("callback function")}}, или более современной системы <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Обещаний(Promises)</a>, которая появилась в ECMAScript 6 и широко используются в новых API.</p> +<p>Если первая строка ещё не вернула результат, вторая вызовет ошибку из-за того, что данные геолокации ещё не стали доступны. По этой причине, API, использующие асинхронные операции, разрабатываются с использованием {{glossary("callback function")}}, или более современной системы <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">промисов</a>, которая появилась в ECMAScript 6 и широко используются в новых API.</p> <p>Мы совмещаем API Геолокации со сторонним API - Google Maps API, который используем для того, чтобы отметить расположение, возвращаемое <code>getCurrentPosition()</code> , на Google Map. Чтобы Google Maps API стал доступен на нашей странице, мы включаем его в HTML документ:</p> diff --git a/files/ru/learn/server-side/express_nodejs/displaying_data/flow_control_using_async/index.html b/files/ru/learn/server-side/express_nodejs/displaying_data/flow_control_using_async/index.html index ea3160636f..e75df8168f 100644 --- a/files/ru/learn/server-side/express_nodejs/displaying_data/flow_control_using_async/index.html +++ b/files/ru/learn/server-side/express_nodejs/displaying_data/flow_control_using_async/index.html @@ -9,7 +9,7 @@ translation_of: Learn/Server-side/Express_Nodejs/Displaying_data/flow_control_us <p>Код контроллера для некоторых страниц библиотеки будет зависеть от результатов многих асинхронных запросов, которые должны выполняться в определённом порядке или параллельно. Для того, чтобы управлять потоком выполнения, и выводить страницы, когда получена вся необходимая информация, будет использован <a class="external external-icon" href="https://www.npmjs.com/package/async" rel="noopener">async</a> - известный модуль node.</p> <div class="note"> -<p><strong>Note:</strong> В JavaScript существует много других способов управления асинхронным поведением и потоком выполнения, включая такой относительно новый элемент языка JacaScript как <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Techniques/Promises">Promises</a> (обещания, промисы).</p> +<p><strong>Примечание:</strong> В JavaScript существует много других способов управления асинхронным поведением и потоком выполнения, включая такой относительно новый элемент языка JavaScript как <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Techniques/Promises">промисы</a> (promises).</p> </div> <p>Модуль Async имеет массу полезных методов (см. документацию <a class="external external-icon" href="http://caolan.github.io/async/docs.html" rel="noopener">the documentation</a>). Вот некоторые наиболее важные функции:</p> diff --git a/files/ru/mozilla/firefox/releases/53/index.html b/files/ru/mozilla/firefox/releases/53/index.html index 969d7052ce..f12a4397c4 100644 --- a/files/ru/mozilla/firefox/releases/53/index.html +++ b/files/ru/mozilla/firefox/releases/53/index.html @@ -118,7 +118,7 @@ translation_of: Mozilla/Firefox/Releases/53 <h4 id="WebRTC"><font><font>WebRTC</font></font></h4> <ul> - <li><font><font>В {{domxref ( "RTCPeerConnection")}} методы {{domxref ( "RTCPeerConnection.createOffer", "createOffer ()")}} и {{domxref ( "RTCPeerConnection.createAnswer", "createAnswer ()")}} Теперь возвращает {{jsxref ( "обещание")}} , </font><font>который возвращает объект , </font><font>соответствующий словарь {{domxref ( "RTCSessionDescriptionInit")}} вместо возврата {{domxref ( "RTCSessionDescription")}} непосредственно. </font><font>Существующий код будет продолжать работать, но </font></font><a href="/en-US/docs/Web/API/RTCPeerConnection/setLocalDescription#About_the_session_description_parameter"><font><font>новый код можно записать более просто</font></font></a><font><font> .</font></font></li> + <li><font><font>В {{domxref ( "RTCPeerConnection")}} методы {{domxref ( "RTCPeerConnection.createOffer", "createOffer ()")}} и {{domxref ( "RTCPeerConnection.createAnswer", "createAnswer ()")}} Теперь возвращает {{jsxref ( "промис")}} , </font><font>который возвращает объект , </font><font>соответствующий словарь {{domxref ( "RTCSessionDescriptionInit")}} вместо возврата {{domxref ( "RTCSessionDescription")}} непосредственно. </font><font>Существующий код будет продолжать работать, но </font></font><a href="/en-US/docs/Web/API/RTCPeerConnection/setLocalDescription#About_the_session_description_parameter"><font><font>новый код можно записать более просто</font></font></a><font><font> .</font></font></li> <li><font><font>Аналогичным образом </font><font>, {{domxref ( "RTCPeerConnection")}} методы {{domxref ( "RTCPeerConnection.setLocalDescription", "setLocalDescription ()")}} и {{domxref ( "RTCPeerConnection.setRemoteDescription", "setRemoteDescription ()")}} теперь принимают в </font><font>качестве входных данных объекта , </font><font>соответствующего словарю {{domxref ( "RTCSessionDescriptionInit")}}. </font><font>Существующий код продолжает работать, но </font></font><a href="/en-US/docs/Web/API/RTCPeerConnection/setLocalDescription#About_the_session_description_parameter"><font><font>может быть упрощена</font></font></a><font><font> .</font></font></li> <li><font><font>{{Domxref ( "RTCPeerConnection.addIceCandidate ()")}} теперь принимает в качестве входных данных объекта, соответствующую {{domxref ( "RTCIceCandidateInit")}} словарь. </font><font>Это совместимо с существующим кодом, но позволяет новый код, который будет написано чуть более просто при использовании в сочетании с изменениями перечисленных выше ({{bug (1263312)}}).</font></font></li> <li><font><font>{{glossary( "DTMF")}} поддержка теперь включена по умолчанию , </font><font>используя {{domxref ( "RTCDTMFSender")}}. </font><font>См </font></font><a href="/en-US/docs/Web/API/WebRTC_API/Using_DTMF"><font><font>Использование DTMF с WebRTC</font></font></a><font><font> для получения </font><font>дополнительной информации о том , </font><font>как это работает.</font></font></li> @@ -198,7 +198,7 @@ translation_of: Mozilla/Firefox/Releases/53 <h3 id="модули_JavaScript_код"><font><font>модули JavaScript код</font></font></h3> <ul> - <li><font><font>Асинхронные </font></font><a href="../../../Add-ons/Add-on_Manager/AddonManager"><font><font>интерфейсы AddonManager</font></font></a><font><font> теперь поддерживают {{jsxref ( "Promise", "Обещание")}}, а также колбэки ({{bug (987512)}}.</font></font></li> + <li><font><font>Асинхронные </font></font><a href="../../../Add-ons/Add-on_Manager/AddonManager"><font><font>интерфейсы AddonManager</font></font></a><font><font> теперь поддерживают {{jsxref ( "Promise", "Промис")}}, а также колбэки ({{bug (987512)}}.</font></font></li> </ul> <h2 id="Смотрите_также"><font><font>Смотрите также</font></font></h2> diff --git a/files/ru/web/api/abortcontroller/abort/index.html b/files/ru/web/api/abortcontroller/abort/index.html index 3133be11ae..213e422257 100644 --- a/files/ru/web/api/abortcontroller/abort/index.html +++ b/files/ru/web/api/abortcontroller/abort/index.html @@ -54,7 +54,7 @@ function fetchVideo() { }</pre> <div class="note"> -<p><strong>Примечание</strong>: Когда <code>abort()</code> вызывается, <code>fetch()</code> обещание отклоняется с <code>AbortError</code>.</p> +<p><strong>Примечание</strong>: Когда <code>abort()</code> вызывается, <code>fetch()</code> промис отклоняется с <code>AbortError</code>.</p> </div> <p>Вы можете найти полный работающий пример на GitHub — см. <a href="https://github.com/mdn/dom-examples/tree/master/abort-api">abort-api</a> (<a href="https://mdn.github.io/dom-examples/abort-api/">увидеть работу в живую</a>).</p> diff --git a/files/ru/web/api/abortcontroller/abortcontroller/index.html b/files/ru/web/api/abortcontroller/abortcontroller/index.html index be87c327d1..958e3a5dc6 100644 --- a/files/ru/web/api/abortcontroller/abortcontroller/index.html +++ b/files/ru/web/api/abortcontroller/abortcontroller/index.html @@ -50,7 +50,7 @@ function fetchVideo() { }</pre> <div class="note"> -<p><strong>Примечание</strong>: Когда <code>abort()</code> вызывается, <code>fetch()</code> обещание отклоняется с <code>AbortError</code>.</p> +<p><strong>Примечание</strong>: Когда <code>abort()</code> вызывается, <code>fetch()</code> промис отклоняется с <code>AbortError</code>.</p> </div> <p>Вы можете найти полный рабочий пример на GitHub — см. <a href="https://github.com/mdn/dom-examples/tree/master/abort-api">abort-api</a> (<a href="https://mdn.github.io/dom-examples/abort-api/">см. как он работает в живую</a>).</p> diff --git a/files/ru/web/api/abortcontroller/signal/index.html b/files/ru/web/api/abortcontroller/signal/index.html index b8a75feef2..9a1575bb0e 100644 --- a/files/ru/web/api/abortcontroller/signal/index.html +++ b/files/ru/web/api/abortcontroller/signal/index.html @@ -52,7 +52,7 @@ function fetchVideo() { }</pre> <div class="note"> -<p><strong>Примечание</strong>: Когда <code>abort()</code> вызывается, <code>fetch()</code> обещание отклоняется с <code>AbortError</code>.</p> +<p><strong>Примечание</strong>: Когда <code>abort()</code> вызывается, промис <code>fetch()</code> отклоняется с <code>AbortError</code>.</p> </div> <p>Вы можете найти полный рабочий пример на GitHub — см. <a href="https://github.com/mdn/dom-examples/tree/master/abort-api">abort-api</a> (<a href="https://mdn.github.io/dom-examples/abort-api/">см. как он работает в живую</a>).</p> diff --git a/files/ru/web/api/abortsignal/index.html b/files/ru/web/api/abortsignal/index.html index ea8d029224..a4b35633f0 100644 --- a/files/ru/web/api/abortsignal/index.html +++ b/files/ru/web/api/abortsignal/index.html @@ -58,11 +58,11 @@ function fetchVideo() { }</pre> <div class="note"> -<p><strong>Примечание</strong>: Когда <code>abort()</code> вызывается, <code>fetch()</code> обещание отклоняется с <code>AbortError</code>.</p> +<p><strong>Примечание</strong>: Когда <code>abort()</code> вызывается, <code>fetch()</code> промис отклоняется с <code>AbortError</code>.</p> </div> <div class="warning"> -<p>Текущая версия Firefox отклоняет обещание с <code>DOMException</code></p> +<p>Текущая версия Firefox отклоняет промис с <code>DOMException</code></p> </div> <p>Вы можете найти полный рабочий пример на GitHub — см. <a href="https://github.com/mdn/dom-examples/tree/master/abort-api">abort-api</a> (<a href="https://mdn.github.io/dom-examples/abort-api/">см. как он работает в живую</a>).</p> diff --git a/files/ru/web/api/animation/index.html b/files/ru/web/api/animation/index.html index fbe650d434..ba29492629 100644 --- a/files/ru/web/api/animation/index.html +++ b/files/ru/web/api/animation/index.html @@ -25,7 +25,7 @@ translation_of: Web/API/Animation <dt>{{domxref("Animation.effect")}}</dt> <dd>Возвращает и задаёт {{domxref ("AnimationEffectReadOnly")}} связанный с этой анимацией. Обычно это объект {{domxref ("KeyframeEffect")}}.</dd> <dt>{{domxref("Animation.finished")}} {{readOnlyInline}}</dt> - <dd>Возвращает текущее завершённое Promise(обещание) для этой анимации.</dd> + <dd>Возвращает промис, сигнализирующий о завершении анимации.</dd> </dl> <dl> @@ -42,7 +42,7 @@ translation_of: Web/API/Animation <dl> <dt>{{domxref("Animation.ready")}} {{readOnlyInline}}</dt> - <dd>Возвращает текущее готовое Promise(обещание) для этой анимации.</dd> + <dd>Возвращает промис, сигнализирующий о начале проигрывания анимации.</dd> </dl> <dl> diff --git a/files/ru/web/api/body/formdata/index.html b/files/ru/web/api/body/formdata/index.html index 5b80766e66..329f8b194b 100644 --- a/files/ru/web/api/body/formdata/index.html +++ b/files/ru/web/api/body/formdata/index.html @@ -5,7 +5,7 @@ translation_of: Web/API/Body/formData --- <div>{{APIRef("Fetch")}}</div> -<p>Метод <strong><code>formData()</code></strong> из {{domxref("Body")}} принимает поток ответа {{domxref("Response")}} и считывает его до завершения. Он возвращает обещание, которое разрешается с помощью объекта {{domxref("FormData")}}.</p> +<p>Метод <strong><code>formData()</code></strong> из {{domxref("Body")}} принимает поток ответа {{domxref("Response")}} и считывает его до завершения. Он возвращает промис, который разрешается с помощью объекта {{domxref("FormData")}}.</p> <div class="note"> <p><strong>Примечание:</strong> Это в основном относится к <a href="/en-US/docs/Web/API/ServiceWorker_API">service workers</a>. Если пользователь отправляет форму а service worker перехватывает запрос, можно, например, вызвать <code>formData()</code> чтобы получить набор данных в формате ключ-значение, изменить некоторые поля, а затем отправить форму на сервер, или использовать её локально.</p> diff --git a/files/ru/web/api/body/json/index.html b/files/ru/web/api/body/json/index.html index 76811b032b..e30aec4dd9 100644 --- a/files/ru/web/api/body/json/index.html +++ b/files/ru/web/api/body/json/index.html @@ -9,7 +9,7 @@ translation_of: Web/API/Body/json --- <div>{{APIRef("Fetch")}}</div> -<p>Метод <strong><code>json()</code></strong> , определён на миксине {{domxref("Body")}}, который включён в объектах <a href="https://developer.mozilla.org/ru/docs/Web/API/Request" rel="nofollow" title="Документация об этом ещё не написана; пожалуйста, поспособствуйте её написанию!"><code>Request</code></a> и <a href="https://developer.mozilla.org/ru/docs/Web/API/Response" rel="nofollow" title="Документация об этом ещё не написана; пожалуйста, поспособствуйте её написанию!"><code>Response</code></a>, принимает и читает тело {{domxref("Response")}} stream. Возвращает promise (обещание), который, когда ответ будет получен, вызовет колбэк с результатом парсинга тела ответа в {{jsxref("JSON")}} объект.</p> +<p>Метод <strong><code>json()</code></strong> , определён на миксине {{domxref("Body")}}, который включён в объектах <a href="https://developer.mozilla.org/ru/docs/Web/API/Request" rel="nofollow" title="Документация об этом ещё не написана; пожалуйста, поспособствуйте её написанию!"><code>Request</code></a> и <a href="https://developer.mozilla.org/ru/docs/Web/API/Response" rel="nofollow" title="Документация об этом ещё не написана; пожалуйста, поспособствуйте её написанию!"><code>Response</code></a>, принимает и читает тело {{domxref("Response")}} stream. Возвращает промис, который, когда ответ будет получен, вызовет колбэк с результатом парсинга тела ответа в {{jsxref("JSON")}} объект.</p> <h2 id="Синтаксис">Синтаксис</h2> @@ -23,7 +23,7 @@ translation_of: Web/API/Body/json <h3 id="Возвращает">Возвращает</h3> -<p>Promise (обещание), который, когда ответ будет получен, вызовет колбэк с результатом парсинга тела ответа в JSON объект. Этим может быть что угодно, что может быть представлено как JSON объект — объект, массив, строка, число...</p> +<p>Промис, который, когда ответ будет получен, вызовет колбэк с результатом парсинга тела ответа в JSON объект. Этим может быть что угодно, что может быть представлено как JSON объект — объект, массив, строка, число...</p> <h2 id="Пример">Пример</h2> diff --git a/files/ru/web/api/extendableevent/waituntil/index.html b/files/ru/web/api/extendableevent/waituntil/index.html index 771a71bed1..eccb5c9734 100644 --- a/files/ru/web/api/extendableevent/waituntil/index.html +++ b/files/ru/web/api/extendableevent/waituntil/index.html @@ -5,13 +5,13 @@ translation_of: Web/API/ExtendableEvent/waitUntil --- <p>{{APIRef("Service Workers API")}}</p> -<p><span class="seoSummary">Метод <code><strong>ExtendableEvent.waitUntil()</strong></code> сообщает диспетчеру событий, что выполняется действие. Также этот метод может быть использован, для того чтобы определить было ли то действие успешным. В рамках service workers, <code>waitUntil()</code> сообщает браузеру, что действие продолжается пока обещание не завершится (<em>promise settles</em>) и браузер не должен прерывать service worker если он хочет, чтобы это действие завершилось.</span></p> +<p><span class="seoSummary">Метод <code><strong>ExtendableEvent.waitUntil()</strong></code> сообщает диспетчеру событий, что выполняется действие. Также этот метод может быть использован, для того чтобы определить было ли то действие успешным. В рамках service workers, <code>waitUntil()</code> сообщает браузеру, что действие продолжается пока промис не завершится (<em>promise settles</em>) и браузер не должен прерывать service worker если он хочет, чтобы это действие завершилось.</span></p> -<p>События <code>install</code> в {{domxref("ServiceWorkerGlobalScope", "service workers")}} используют <code>waitUntil()</code> чтобы задержать service worker в {{domxref("ServiceWorkerRegistration.installing", "installing")}} фазе пока не завершатся задачи. Если обещание переданное в <code>waitUntil()</code> отклоняется, установка считается неудачной и устанавливаемый service worker отбрасывается. В первую очередь это используется для гарантии того, что service worker не рассматривается как установленный (installed), пока все основные кеши на которые он зависит успешно не заполнены.</p> +<p>События <code>install</code> в {{domxref("ServiceWorkerGlobalScope", "service workers")}} используют <code>waitUntil()</code> чтобы задержать service worker в {{domxref("ServiceWorkerRegistration.installing", "installing")}} фазе пока не завершатся задачи. Если промис, переданный в <code>waitUntil()</code>, отклоняется, установка считается неудачной и устанавливаемый service worker отбрасывается. В первую очередь это используется для гарантии того, что service worker не рассматривается как установленный (installed), пока все основные кеши на которые он зависит успешно не заполнены.</p> -<p>События <code>activate</code> в {{domxref("ServiceWorkerGlobalScope", "service workers")}} используют <code>waitUntil()</code> для размещения в буфере функциональных событий таких как <code>fetch</code> и <code>push</code> пока обещание переданное в <code>waitUntil()</code> не завершится успешно. Это даёт service worker время, чтобы обновить схемы базы данных и удалить устаревшие {{domxref("Cache", "caches")}}, таким образом другие события могут полагаться на полностью обновлённое состояние.</p> +<p>События <code>activate</code> в {{domxref("ServiceWorkerGlobalScope", "service workers")}} используют <code>waitUntil()</code> для размещения в буфере функциональных событий таких как <code>fetch</code> и <code>push</code> пока промис, переданный в <code>waitUntil()</code>, не завершится успешно. Это даёт service worker время, чтобы обновить схемы базы данных и удалить устаревшие {{domxref("Cache", "caches")}}, таким образом другие события могут полагаться на полностью обновлённое состояние.</p> -<p>Метод <code>waitUntil()</code> должен быть изначально вызван внутри колбэка события (<em>event callback</em>), но после этого он может быть вызван множество раз, до тех пор пока все обещания переданные в него не завершатся успешно.</p> +<p>Метод <code>waitUntil()</code> должен быть изначально вызван внутри колбэка события (<em>event callback</em>), но после этого он может быть вызван множество раз, до тех пор пока все промисы, переданные в него, не завершатся успешно.</p> <div class="note"> <p><strong>Примечание</strong>: Поведение описанное в параграфе выше, было исправлено в Firefix 43 (смотрите {{bug(1180274)}}).</p> diff --git a/files/ru/web/api/fetch_api/index.html b/files/ru/web/api/fetch_api/index.html index bdb1dfde33..6770673668 100644 --- a/files/ru/web/api/fetch_api/index.html +++ b/files/ru/web/api/fetch_api/index.html @@ -36,7 +36,7 @@ translation_of: Web/API/Fetch_API <ul> <li> - <p>Обещание, возвращённое из <code>fetch()</code>, <strong>не будет отвергнуто при статусе ошибки HTTP</strong>, даже если ответ является HTTP <code>404</code> или <code>500</code>. Вместо этого, оно будет разрешаться нормально (со статусом <code>ok</code> установленным в <code>false</code>), и будет отклоняться только при сбое в сети или если что-то помешало завершению запроса.</p> + <p>Промис, возвращённый из <code>fetch()</code>, <strong>не будет отвергнут при статусе ошибки HTTP</strong>, даже если ответ является HTTP <code>404</code> или <code>500</code>. Вместо этого, оно будет разрешаться нормально (со статусом <code>ok</code> установленным в <code>false</code>), и будет отклоняться только при сбое в сети или если что-то помешало завершению запроса.</p> </li> <li> <p><code>fetch() </code>может получать межсайтовые куки-файлы; таким образом вы можете установить межсайтовую сессию используя <code>fetch</code>.</p> diff --git a/files/ru/web/api/htmlmediaelement/index.html b/files/ru/web/api/htmlmediaelement/index.html index 5a8d6658e8..9df2c486cb 100644 --- a/files/ru/web/api/htmlmediaelement/index.html +++ b/files/ru/web/api/htmlmediaelement/index.html @@ -170,7 +170,7 @@ translation_of: Web/API/HTMLMediaElement <dt>{{domxref("HTMLMediaElement.seekToNextFrame()")}} {{non-standard_inline}} {{experimental_inline}}</dt> <dd>Стремится к следующему кадру в медиа. Этот нестандартный экспериментальный метод позволяет вручную управлять считыванием и воспроизведением мультимедиа с настраиваемой скоростью или перемещаться по мультимедиа покадрово для выполнения фильтрации или других операций.</dd> <dt>{{domxref("HTMLMediaElement.setMediaKeys()")}} {{experimental_inline}}</dt> - <dd>Возвращает {{jsxref ("Обещание")}}. Устанавливает клавиши {{domxref ("MediaKeys")}}, используемые при дешифровании медиафайлов во время воспроизведения.</dd> + <dd>Возвращает {{jsxref ("Промис")}}. Устанавливает клавиши {{domxref ("MediaKeys")}}, используемые при дешифровании медиафайлов во время воспроизведения.</dd> <dt>{{domxref("HTMLMediaElement.setSinkId()")}} {{experimental_inline}}</dt> <dd>Устанавливает идентификатор аудиоустройства, которое будет использоваться для вывода, и возвращает {{jsxref ("Promise")}}. Это работает только тогда, когда приложение имеет право использовать указанное устройство.</dd> </dl> diff --git a/files/ru/web/api/navigator/getusermedia/index.html b/files/ru/web/api/navigator/getusermedia/index.html index 831810d772..3bd6f9e60f 100644 --- a/files/ru/web/api/navigator/getusermedia/index.html +++ b/files/ru/web/api/navigator/getusermedia/index.html @@ -10,7 +10,7 @@ translation_of: Web/API/Navigator/getUserMedia <p>If permission is granted, a <code>MediaStream</code> whose video and/or audio tracks come from those devices is delivered to the specified success callback. If permission is denied, no compatible input devices exist, or any other error condition occurs, the error callback is executed with a {{domxref("MediaStreamError")}} object describing what went wrong. If the user instead doesn't make a choice at all, neither callback is executed.</p> <div class="note"> -<p><span class="VIiyi" lang="ru"><span class="ChMk0b JLqJ4b"><span>Это устаревший метод.</span></span> <span class="ChMk0b JLqJ4b"><span>Вместо этого используйте более новую версию {{domxref ("MediaDevices.getUserMedia", "navigator.mediaDevices.getUserMedia ()")}}.</span></span> <span class="ChMk0b JLqJ4b"><span>Хотя технически не рекомендуется, эта старая версия колбэка помечена как таковая, поскольку спецификация настоятельно рекомендует использовать более новую версию, возвращающую обещание.</span></span></span></p> +<p><span class="VIiyi" lang="ru"><span class="ChMk0b JLqJ4b"><span>Это устаревший метод.</span></span> <span class="ChMk0b JLqJ4b"><span>Вместо этого используйте более новую версию {{domxref ("MediaDevices.getUserMedia", "navigator.mediaDevices.getUserMedia ()")}}.</span></span> <span class="ChMk0b JLqJ4b"><span>Хотя технически не рекомендуется, эта старая версия колбэка помечена как таковая, поскольку спецификация настоятельно рекомендует использовать более новую версию, возвращающую промис.</span></span></span></p> </div> <h2 id="Синтаксис">Синтаксис</h2> diff --git a/files/ru/web/api/request/index.html b/files/ru/web/api/request/index.html index a401b2cbe1..7245130a9e 100644 --- a/files/ru/web/api/request/index.html +++ b/files/ru/web/api/request/index.html @@ -75,7 +75,7 @@ translation_of: Web/API/Request <dl> <dt>{{domxref("Body.arrayBuffer()")}}</dt> - <dd>Возвращает promise ("обещание") которое выполняется, возвращая {{domxref("ArrayBuffer")}} репрезентацию тела запроса.</dd> + <dd>Возвращает промис, который выполняется, возвращая {{domxref("ArrayBuffer")}} репрезентацию тела запроса.</dd> <dt>{{domxref("Body.blob()")}}</dt> <dd>Возвращает promise </dd> <dt>{{domxref("Body.formData()")}}</dt> diff --git a/files/ru/web/api/service_worker_api/using_service_workers/index.html b/files/ru/web/api/service_worker_api/using_service_workers/index.html index b8dcf3657d..1092823cfc 100644 --- a/files/ru/web/api/service_worker_api/using_service_workers/index.html +++ b/files/ru/web/api/service_worker_api/using_service_workers/index.html @@ -56,7 +56,7 @@ translation_of: Web/API/Service_Worker_API/Using_Service_Workers <p><img alt="install, activate, message, fetch, sync, push" src="https://mdn.mozillademos.org/files/12632/sw-events.png" style="display: block; margin: 0px auto;"></p> -<h3 id="Промисы_обещания">Промисы (обещания)</h3> +<h3 id="Промисы">Промисы</h3> <p><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Промисы</a> — отличный механизм для запуска асинхронных операций, которые могут успешно зависеть друг от друга. Промисы имеют большое значение в работе сервис-воркеров.</p> diff --git a/files/ru/web/api/web_animations_api/using_the_web_animations_api/index.html b/files/ru/web/api/web_animations_api/using_the_web_animations_api/index.html index e19524852d..9aa24fcce9 100644 --- a/files/ru/web/api/web_animations_api/using_the_web_animations_api/index.html +++ b/files/ru/web/api/web_animations_api/using_the_web_animations_api/index.html @@ -314,7 +314,7 @@ drinking.pause();</pre> <p><strong>Примечание:</strong> <code>getAnimations()</code> и эффект не полностью поддерживаются на момент написания этой статьи, но polyfill поддерживает их уже сегодня.</p> </div> -<h2 id="Обратные_вызовы_и_обещания">Обратные вызовы и обещания</h2> +<h2 id="Колбэки_и_промисы">Колбэки и промисы</h2> <p>CSS Animations и Transitions (переходы) имеют свои события и они также могут быть воспроизведены и в Web Animations API:</p> @@ -337,7 +337,7 @@ aliceChange.onfinish = endGame; <p>Нравится перспектива? Web Animations API также даёт две перспективы: <code><a href="/en-US/docs/Web/API/Animation/onfinish">onfinish</a></code> и <code><a href="/en-US/docs/Web/API/Animation/oncancel">oncancel</a></code>.</p> <div class="note"> -<p>Эти обещания не полностью поддерживаются в настоящий момент.</p> +<p>Эти промисы не полностью поддерживаются в настоящий момент.</p> </div> <h2 id="Заключение">Заключение</h2> diff --git a/files/ru/web/api/webvr_api/index.html b/files/ru/web/api/webvr_api/index.html index 8905173834..07cdac8fd5 100644 --- a/files/ru/web/api/webvr_api/index.html +++ b/files/ru/web/api/webvr_api/index.html @@ -84,7 +84,7 @@ translation_of: Web/API/WebVR_API <dt>{{domxref("Navigator.activeVRDisplays")}} {{readonlyInline}}</dt> <dd>Возвращает массив, содержащий каждый {{domxref("VRDisplay")}} объект, который в настоящее время отображается ({{domxref("VRDisplay.ispresenting")}} является <code>true</code>).</dd> <dt>{{domxref("Navigator.getVRDisplays()")}}</dt> - <dd>Возвращает обещание, которое преобразуется в массив {{domxref("VRDisplay")}} объектов, представляющих любые доступные VR-дисплеи, подключённые к компьютеру.</dd> + <dd>Возвращает промис, который преобразуется в массив {{domxref("VRDisplay")}} объектов, представляющих любые доступные VR-дисплеи, подключённые к компьютеру.</dd> </dl> <h4 id="Window_события">Window события</h4> diff --git a/files/ru/web/api/windoworworkerglobalscope/fetch/index.html b/files/ru/web/api/windoworworkerglobalscope/fetch/index.html index dc4a7e7f7e..37be5853ae 100644 --- a/files/ru/web/api/windoworworkerglobalscope/fetch/index.html +++ b/files/ru/web/api/windoworworkerglobalscope/fetch/index.html @@ -13,7 +13,7 @@ translation_of: Web/API/WindowOrWorkerGlobalScope/fetch <p><code>WorkerOrGlobalScope</code> относится к {{domxref("Window")}} и {{domxref("WorkerGlobalScope")}} сразу. Это означает, что метод <code>fetch()</code> доступен практически в любом контексте, в котором бы вы не захотели получить ресурсы.</p> -<p>{{domxref("WindowOrWorkerGlobalScope.fetch","Fetch()")}} promise (обещание) завершается {{jsxref("TypeError")}}, если возникает сетевая ошибка, хотя обычно это означает проблему с доступами или аналогичную ей. Для успешного завершения <code>fetch()</code> достаточно удостовериться в том, что обещание выполнено и что свойство {{domxref("Response.ok")}} имеет значение <code>true</code>. HTTP статус 404 не является сетевой ошибкой.</p> +<p>Промис {{domxref("WindowOrWorkerGlobalScope.fetch","Fetch()")}} завершается {{jsxref("TypeError")}}, если возникает сетевая ошибка, хотя обычно это означает проблему с доступами или аналогичную ей. Для успешного завершения <code>fetch()</code> достаточно удостовериться в том, что промис выполнен и что свойство {{domxref("Response.ok")}} имеет значение <code>true</code>. HTTP статус 404 не является сетевой ошибкой.</p> <p>Метод <code>fetch()</code> контролируется директивой <code>connect-src</code> directive of <a href="/en-US/docs/Security/CSP/CSP_policy_directives">Content Security Policy</a> (политика безопасности контента), а не директивой ресурсов, которые извлекает.</p> diff --git a/files/ru/web/javascript/guide/control_flow_and_error_handling/index.html b/files/ru/web/javascript/guide/control_flow_and_error_handling/index.html index dd86463b4a..b2b7191228 100644 --- a/files/ru/web/javascript/guide/control_flow_and_error_handling/index.html +++ b/files/ru/web/javascript/guide/control_flow_and_error_handling/index.html @@ -339,7 +339,7 @@ catch (e) { <li><em>ожидание (pending)</em>: начальное состояние, не выполнено и не отклонено.</li> <li><em>выполнено (fulfilled)</em>: операция завершена успешно.</li> <li><em>отклонено (rejected)</em>: операция завершена с ошибкой.</li> - <li><em>заданный (settled)</em>: обещание выполнено или отклонено, но не находится в состоянии ожидания.</li> + <li><em>заданный (settled)</em>: промис выполнен или отклонен, но не находится в состоянии ожидания.</li> </ul> <p><img alt="" src="https://mdn.mozillademos.org/files/8633/promises.png" style="height: 297px; width: 801px;"></p> diff --git a/files/ru/web/javascript/guide/using_promises/index.html b/files/ru/web/javascript/guide/using_promises/index.html index 7793197399..90c0214d0c 100644 --- a/files/ru/web/javascript/guide/using_promises/index.html +++ b/files/ru/web/javascript/guide/using_promises/index.html @@ -13,7 +13,7 @@ original_slug: Web/JavaScript/Guide/Ispolzovanie_promisov <p>{{jsSidebar("Руководство по JavaScript")}}{{PreviousNext("Web/JavaScript/Guide/Details_of_the_Object_Model", "Web/JavaScript/Guide/Iterators_and_Generators")}}</p> </div> -<p class="summary">{{jsxref("Promise")}} (промис, англ. "обещание") - это объект, представляющий результат успешного или неудачного завершения асинхронной операции. Так как большинство людей пользуются уже созданными промисами, это руководство начнём с объяснения использования вернувшихся промисов до объяснения принципов создания. </p> +<p class="summary">{{jsxref("Promise")}} (промис) - это объект, представляющий результат успешного или неудачного завершения асинхронной операции. Так как большинство людей пользуются уже созданными промисами, это руководство начнём с объяснения использования вернувшихся промисов до объяснения принципов создания. </p> <p>В сущности, промис - это возвращаемый объект, в который вы записываете два колбэка вместо того, чтобы передать их функции.</p> @@ -281,23 +281,23 @@ console.log(1); // 1, 2, 3, 4</code></pre> <h2 id="Частые_ошибки">Частые ошибки</h2> -<p>В этом разделе собраны частые ошибки, возникающие при создании цепочек обещаний. Несколько таких ошибок можно увидеть в следующем примере:</p> +<p>В этом разделе собраны частые ошибки, возникающие при создании цепочек промисов. Несколько таких ошибок можно увидеть в следующем примере:</p> <pre><code>// Плохой пример! Три ошибки! doSomething().then(function(result) { - doSomethingElse(result) // Забыл вернуть обещание из внутренней цепочки + неуместное влаживание + doSomethingElse(result) // Забыл вернуть промис из внутренней цепочки + неуместное влаживание .then(newResult => doThirdThing(newResult)); }).then(() => doFourthThing()); // Забыл закончить цепочку методом catch</code></pre> <p>Первая ошибка это неправильно сцепить вещи между собой. Такое происходит когда мы создаём промис но забываем вернуть его. Как следствие, цепочка сломана, но правильнее было бы сказать что теперь у нас есть две независимые цепочки, соревнующиеся за право разрешится первой. Это означает <code>doFourthThing()</code> не будет ждать <code>doSomethingElse()</code> или <code>doThirdThing()</code> пока тот закончится, и будет исполнятся параллельно с ними, это ,вероятно, не то что хотел разработчик. Отдельные цепочки также имеют отдельную обработку ошибок, что приводит к необработанным ошибкам.</p> -<p>Вторая ошибка это излишняя вложенность, включая первую ошибку. Вложенность также ограничивает область видимости внутренних обработчиков ошибок, если это не то чего хотел разработчик, это может привести к необработанным ошибкам. Примером этого является <a href="https://stackoverflow.com/questions/23803743/what-is-the-explicit-promise-construction-antipattern-and-how-do-i-avoid-it">пример как не нужно создавать обещания</a>, который комбинирует вложенность с чрезмерным использованием конструктора обещаний для оборачивания кода который уже использует промисы.</p> +<p>Вторая ошибка это излишняя вложенность, включая первую ошибку. Вложенность также ограничивает область видимости внутренних обработчиков ошибок, если это не то чего хотел разработчик, это может привести к необработанным ошибкам. Примером этого является <a href="https://stackoverflow.com/questions/23803743/what-is-the-explicit-promise-construction-antipattern-and-how-do-i-avoid-it">пример как не нужно создавать промисы</a>, который комбинирует вложенность с чрезмерным использованием конструктора промисов для оборачивания кода который уже использует промисы.</p> -<p>Третья ошибка это забыть закончить цепочку ключевым словом <code>catch</code>. Незаконченные цепочки приводят к необработанным отторжениям обещаний в большинстве браузеров.</p> +<p>Третья ошибка это забыть закончить цепочку ключевым словом <code>catch</code>. Незаконченные цепочки приводят к необработанным отторжениям промисов в большинстве браузеров.</p> -<p>Хорошим примером является всегда либо возвращать либо заканчивать цепочки обещаний, и как только вы получаете новое обещание, возвращайте его сразу же, чтобы не усложнять код излишней вложенностью:</p> +<p>Хорошим примером является всегда либо возвращать либо заканчивать цепочки промисов, и как только вы получаете новый промис, возвращайте его сразу же, чтобы не усложнять код излишней вложенностью:</p> <pre><code>doSomething() .then(function(result) { diff --git a/files/ru/web/javascript/reference/errors/not_a_constructor/index.html b/files/ru/web/javascript/reference/errors/not_a_constructor/index.html index 6dd7c11364..cc7a5e3150 100644 --- a/files/ru/web/javascript/reference/errors/not_a_constructor/index.html +++ b/files/ru/web/javascript/reference/errors/not_a_constructor/index.html @@ -69,11 +69,11 @@ var obj = new f; <pre class="brush: js">var mycar = new Car('Лада', 'Самара', 1993);</pre> -<h3 id="В_Обещаниях_(Promises)">В Обещаниях (Promises)</h3> +<h3 id="В_Промисах">В Промисах</h3> -<p>В случае, когда возвращается незамедлительно разрешённое или незамедлительно отклонённое Обещание, вам не нужно создавать новое Обещание <em>new Promise(...)</em> и работать с ним.</p> +<p>В случае, когда возвращается незамедлительно разрешённый или незамедлительно отклонённый промис, вам не нужно создавать новый промис <em>new Promise(...)</em> и работать с ним.</p> -<p>Это неправильно (<a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise#Constructor">конструктор Обещания</a> вызывается неправильно) и будет вызывать исключение <code>TypeError: this is not a constructor</code>:</p> +<p>Это неправильно (<a href="/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Promise#Constructor">конструктор Promise</a> вызывается неправильно) и будет вызывать исключение <code>TypeError: this is not a constructor</code>:</p> <pre class="brush: js example-bad">return new Promise.resolve(true); </pre> diff --git a/files/ru/web/javascript/reference/global_objects/promise/all/index.html b/files/ru/web/javascript/reference/global_objects/promise/all/index.html index 44ef0a5cf7..e6e344a440 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/all/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/all/index.html @@ -4,7 +4,7 @@ slug: Web/JavaScript/Reference/Global_Objects/Promise/all tags: - ECMAScript6 - JavaScript - - Обещание + - Промис - метод translation_of: Web/JavaScript/Reference/Global_Objects/Promise/all --- @@ -12,7 +12,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/all <h2 id="Summary" name="Summary">Общее описание</h2> -<p>Метод <code><strong>Promise.all(iterable)</strong></code> возвращает обещание, которое выполнится тогда, когда будут выполнены все обещания, переданные в виде перечисляемого аргумента, или отклонено любое из переданных обещаний.</p> +<p>Метод <code><strong>Promise.all(iterable)</strong></code> возвращает промис, который выполнится тогда, когда будут выполнены все промисы, переданные в виде перечисляемого аргумента, или отклонено любое из переданных промисов.</p> <h2 id="Syntax" name="Syntax">Синтаксис</h2> @@ -27,19 +27,19 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/all <h3 id="Возвращаемое_значение">Возвращаемое значение</h3> -<p>{{jsxref("Promise")}}, который будет выполнен когда будут выполнены все обещания, переданные в виде перечисляемого аргумента, или отклонён, если будет отклонено хоть одно из переданных обещаний.</p> +<p>{{jsxref("Promise")}}, который будет выполнен когда будут выполнены все промисы, переданные в виде перечисляемого аргумента, или отклонён, если будет отклонено хоть одно из переданных промисов.</p> <h2 id="Description" name="Description">Описание</h2> -<p><strong>Promise.all</strong> возвращает массив значений от всех обещаний, которые были ему переданы. Возвращаемый массив значений сохраняет порядок оригинального перечисляемого объекта, но не порядок выполнения обещаний. <code>Если какой-либо элемент перечисляемого объекта не является обещанием, то он будет преобразован с помощью метода </code>{{jsxref("Promise.resolve")}}<code>.</code></p> +<p><strong>Promise.all</strong> возвращает массив значений от всех промисов, которые были ему переданы. Возвращаемый массив значений сохраняет порядок оригинального перечисляемого объекта, но не порядок выполнения промисов. <code>Если какой-либо элемент перечисляемого объекта не является промисом, то он будет преобразован с помощью метода </code>{{jsxref("Promise.resolve")}}<code>.</code></p> -<p>Если одно из переданных обещаний будет отклонено, <code><strong>Promise.all </strong></code>будет немедленно отклонён со значением отклонённого обещания, не учитывая другие обещания, независимо выполнены они или нет. Если в качестве аргумента будет передан пустой массив, то <code><strong>Promise.all</strong> </code>будет выполнен немедленно<code>. </code></p> +<p>Если одно из переданных промисов будет отклонено, <code><strong>Promise.all </strong></code>будет немедленно отклонён со значением отклонённого промиса, не учитывая другие промисы, независимо выполнены они или нет. Если в качестве аргумента будет передан пустой массив, то <code><strong>Promise.all</strong> </code>будет выполнен немедленно<code>. </code></p> <h2 id="Примеры">Примеры</h2> <h3 id="Использование_Promise.all">Использование <code>Promise.all</code></h3> -<p><strong>Promise.all </strong>ждёт выполнения всех обещаний (или первого метода <code><strong>reject</strong>()</code>).</p> +<p><strong>Promise.all</strong> ждёт выполнения всех промисов (или первого метода <code><strong>reject</strong>()</code>).</p> <pre><code>var p1 = Promise.resolve(3); var p2 = 1337; @@ -57,7 +57,7 @@ Promise.all([p1, p2, p3]).then(values => { <h3 id="Promise.all_поведение_немедленного_отклонения"><code>Promise.all</code> поведение немедленного отклонения</h3> -<p><strong><code>Promise.all</code></strong> будет немедленно отклонён если одно из переданных обещаний будет отклонено: если у вас есть четыре обещания которые будут выполнены с задержкой и одно, которое будет отклонено немедленно - тогда <strong><code>Promise.all</code></strong> будет немедленно отклонён.</p> +<p><strong><code>Promise.all</code></strong> будет немедленно отклонён если один из переданных промисов будет отклонен: если у вас есть четыре промиса которые будут выполнены с задержкой и один, который будет отклонен немедленно - тогда <strong><code>Promise.all</code></strong> будет немедленно отклонён.</p> <pre><code>var p1 = new Promise((resolve, reject) => { setTimeout(resolve, 1000, "one"); @@ -72,7 +72,7 @@ var p4 = new Promise((resolve, reject) => { setTimeout(resolve, 4000, "four"); }); var p5 = new Promise((resolve, reject) => { -// Это обещание прервёт Promise.all +// Этот промис прервёт Promise.all reject("reject"); }); diff --git a/files/ru/web/javascript/reference/global_objects/promise/any/index.html b/files/ru/web/javascript/reference/global_objects/promise/any/index.html index fc85e0927c..9216e7496e 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/any/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/any/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/any --- <div>{{JSRef}}</div> -<p><code>Метод Promise.any()</code> принимает итерируемый объект содержащий объекты "обещаний" {{JSxRef("Promise")}}. Как только одно из "обещаний"(<code>Promise)</code> выполнится успешно(<code>fullfill</code>), метод возвратит единственный объект <code>Promise</code> со значением выполненного "обещания". Если ни одно из "обещаний" не завершится успешно(если все "обещания" завершатся с ошибкой, т.е. <code>rejected</code>), тогда возвращённый объект promise будет отклонён(<code>rejected</code>) с одним из значений: массив содержащий причины ошибки(отклонения), или {{JSxRef("AggregateError")}} — подкласс {{JSxRef("Error")}}, который объединяет выброшенные ошибки вместе. По существу, метод <code>Promise.any()</code> является противоположностью для {{JSxRef("Promise.all()")}}.</p> +<p><code>Метод Promise.any()</code> принимает итерируемый объект содержащий объекты промисов {{JSxRef("Promise")}}. Как только один из промисов (<code>Promise)</code> выполнится успешно (<code>fullfill</code>), метод возвратит единственный объект <code>Promise</code> со значением выполненного промиса. Если ни один из промисов не завершится успешно (если все промисы завершатся с ошибкой, т.е. <code>rejected</code>), тогда возвращённый объект Promise будет отклонён (<code>rejected</code>) с одним из значений: массив содержащий причины ошибки (отклонения), или {{JSxRef("AggregateError")}} — подкласс {{JSxRef("Error")}}, который объединяет выброшенные ошибки вместе. По существу, метод <code>Promise.any()</code> является противоположностью для {{JSxRef("Promise.all()")}}.</p> <div class="blockIndicator warning"> <p><strong>Warning!</strong> The <code>Promise.any()</code> method is experimental and not fully supported by all browsers. It is currently in the <a href="https://github.com/tc39/proposal-promise-any" rel="external">TC39 Candidate stage (Stage 3)</a>.</p> @@ -26,29 +26,29 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/any <ul> <li><strong>Исполненный</strong> {{JSxRef("Promise")}}, если переданный итерируемый объект пуст.</li> - <li><strong>Исполненный асинхронно</strong> {{JSxRef("Promise")}}, если переданный итерируемый объект не содержит "обещаний"(promises).</li> - <li>Во всех других случаях {{JSxRef("Promise")}} со статусом ожидания(<strong>pending)</strong>. Возвращённое "обещание" будет <strong>исполнено</strong>(resolved/rejected) <strong>асинхронно</strong> (как только стэк вызовов окажется пустым), когда одно(любое) "обещание" из <em>переданного итерируемого объекта исполнится</em>, либо все "обещания" будут отклонены.</li> + <li><strong>Исполненный асинхронно</strong> {{JSxRef("Promise")}}, если переданный итерируемый объект не содержит промисов.</li> + <li>Во всех других случаях {{JSxRef("Promise")}} со статусом ожидания(<strong>pending)</strong>. Возвращённый промис будет <strong>исполнен</strong>(resolved/rejected) <strong>асинхронно</strong> (как только стэк вызовов окажется пустым), когда один (любой) промис из <em>переданного итерируемого объекта исполнится</em>, либо все промисы будут отклонены.</li> </ul> <h2 id="Описание">Описание</h2> -<p>Метод полезен, когда нужно вернуть первое исполненное "обещание". После того как одно из "обещаний" будет исполнено, метод не будет дожидаться исполнения остальных. В отличие от {{JSxRef("Promise.all()")}}, который содержит <em>массив(Array)</em> значений исполненных обещаний, <code>Promise.any()</code> содержит только одно значение (при условии, что хотя бы одно из "обещаний" исполнено успешно). Такой подход может быть выгодным, когда нужно, чтобы выполнилось только одно "обещание", неважно какое. Также, в отличие от {{JSxRef("Promise.race()")}}, который возвращает "обещание", содержащее значение первого <strong>завершённого(resolved или rejected)</strong>, этот метод возвращает "обещание" содержащее значение первого <strong>успешно выполненного(resolved) </strong>"обещания". Метод будет игнорировать исполнение обещаний с ошибкой(rejection) вплоть до первого исполненного успешно(fullfilment).</p> +<p>Метод полезен, когда нужно вернуть первый исполненный промис. После того как один из промисов будет исполнен, метод не будет дожидаться исполнения остальных. В отличие от {{JSxRef("Promise.all()")}}, который содержит <em>массив(Array)</em> значений исполненных промисов, <code>Promise.any()</code> содержит только одно значение (при условии, что хотя бы один из промисов исполнен успешно). Такой подход может быть выгодным, когда нужно, чтобы выполнился только один промис, неважно какой. Также, в отличие от {{JSxRef("Promise.race()")}}, который возвращает промис, содержащий значение первого <strong>завершённого(resolved или rejected)</strong>, этот метод возвращает промис содержащее значение первого <strong>успешно выполненного(resolved)</strong> промиса. Метод будет игнорировать исполнение промисов с ошибкой(rejection) вплоть до первого исполненного успешно (fullfilment).</p> <h3 id="Успешное_исполнениеFullfilment">Успешное исполнение(Fullfilment)</h3> -<p>Если одно из "обещаний" исполнится успешно, возвращённое "обещание" асинхронно исполнится успешно со значением выполненного "обещания", независимо от завершения остальных "обещаний".</p> +<p>Если один из промисов исполнится успешно, возвращённый промис асинхронно исполнится успешно со значением выполненного промиса, независимо от завершения остальных промисов.</p> <ul> - <li>Если передан пустой итерируемый объект, тогда метод возвращает (синхронно) выполненное "обещание".</li> - <li>Если одно из переданных обещаний исполнится успешно, или в переданном итерируемом объекте не содержится "обещаний", "обещание" возвращённое из метода <code>Promise.any</code> асинхронно исполнится успешно.</li> + <li>Если передан пустой итерируемый объект, тогда метод возвращает (синхронно) выполненный промис.</li> + <li>Если один из переданных промисов исполнится успешно, или в переданном итерируемом объекте не содержится промисов, промис возвращённый из метода <code>Promise.any</code> асинхронно исполнится успешно.</li> </ul> <h3 id="Исполнение_с_ошибкойRejection">Исполнение с ошибкой(Rejection)</h3> -<p>Если все переданные "обещания" будут отклонены(rejected), <code>Promise.any</code> асинхронно будет отклонено в одном из двух вариантов (которые ещё не были согласованы): либо</p> +<p>Если все переданные промисы будут отклонены (rejected), <code>Promise.any</code> асинхронно будет отклонено в одном из двух вариантов (которые ещё не были согласованы): либо</p> <ul> - <li>Массив(Array) содержащий причины отклонения всех "обещаний" переданных в итерируемом объекте, либо</li> + <li>Массив(Array) содержащий причины отклонения всех промисов переданных в итерируемом объекте, либо</li> <li>Объект {{JSxRef("AggregateError")}}, расширяющий {{JSxRef("Error")}}, который содержит указатель на массив(Array) исключений.</li> </ul> diff --git a/files/ru/web/javascript/reference/global_objects/promise/catch/index.html b/files/ru/web/javascript/reference/global_objects/promise/catch/index.html index 5a2ed19b38..e3250af6e5 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/catch/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/catch/index.html @@ -5,13 +5,13 @@ tags: - ECMAScript6 - JavaScript - Prototype - - Обещание + - Промис - метод translation_of: Web/JavaScript/Reference/Global_Objects/Promise/catch --- <div>{{JSRef}}</div> -<p>Метод <strong>catch()</strong> возвращает <code>Promise(</code>обещание) и работает только в случае отклонения обещания. Ведёт себя аналогично вызову {{jsxref("Promise.then", "Promise.prototype.then(undefined, onRejected)")}}.</p> +<p>Метод <strong>catch()</strong> возвращает промис (<code>Promise(</code>) и работает только в случае отклонения промиса. Ведёт себя аналогично вызову {{jsxref("Promise.then", "Promise.prototype.then(undefined, onRejected)")}}.</p> <h2 id="Syntax">Syntax</h2> @@ -26,12 +26,12 @@ p.catch(function(reason) { <dl> <dt>onRejected</dt> - <dd>{{jsxref("Function")}} вызывается когда обещание отклонено. У этой функции один аргумент: + <dd>{{jsxref("Function")}} вызывается когда промис отклонен. У этой функции один аргумент: <dl> <dt><code>reason</code></dt> <dd>Причина отказа.</dd> <dt> - <p>Promise( Обещание ), возвращённое catch (), отклоняется, если onRejected выдаёт ошибку(throw) или возвращает Promise, который был отклонён; В противном случае Promise, возвращаемый catch () имеет статус выполнено (fulfilled)</p> + <p>Промис, возвращённый catch (), отклоняется, если onRejected выдаёт ошибку(throw) или возвращает Promise, который был отклонён; В противном случае Promise, возвращаемый catch () имеет статус выполнено (fulfilled)</p> </dt> </dl> </dd> @@ -44,7 +44,7 @@ p.catch(function(reason) { <h2 id="Описание">Описание</h2> <dl> - <dd>Метод <code>catch может быть полезен для обработки ошибок</code> в вашей структуре обещаний.</dd> + <dd>Метод <code>catch может быть полезен для обработки ошибок</code> в вашей структуре промисов.</dd> </dl> <h2 id="Примеры">Примеры</h2> @@ -113,7 +113,7 @@ p2.catch(function(e) { console.log(e); // Никогда не вызовется }); -// Ошибки выброшенные после выполнения обещания будут проигнорированны +// Ошибки выброшенные после выполнения промиса будут проигнорированны var p3 = new Promise(function(resolve, reject) { resolve(); throw 'Silenced Exception!'; diff --git a/files/ru/web/javascript/reference/global_objects/promise/finally/index.html b/files/ru/web/javascript/reference/global_objects/promise/finally/index.html index c12f7625a0..3814eb58aa 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/finally/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/finally/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/finally --- <div>{{JSRef}}</div> -<p>Метод <code><strong>finally()</strong></code> возвращает {{jsxref("Promise")}}. Когда <code>Promise</code> (обещание) был выполнен, в не зависимости успешно или с ошибкой, указанная функция будет выполнена. Это даёт возможность запустить один раз определённый участок кода, который должен выполниться вне зависимости от того, с каким результатом выполнился <code>Promise</code>.</p> +<p>Метод <code><strong>finally()</strong></code> возвращает {{jsxref("Promise")}}. Когда промис был выполнен, вне зависимости успешно или с ошибкой, указанная функция будет выполнена. Это даёт возможность запустить один раз определённый участок кода, который должен выполниться вне зависимости от того, с каким результатом выполнился <code>Promise</code>.</p> <p>Это позволяет вам избавиться от дубликации кода в обработчиках {{jsxref("Promise.then", "then()")}} и {{jsxref("Promise.catch", "catch()")}}.</p> @@ -25,7 +25,7 @@ p.finally(() => { <dl> <dt><code>onFinally</code></dt> - <dd>Функция {{jsxref("Function")}} вызываемая когда <code>Promise</code> (обещание) завершено.</dd> + <dd>Функция {{jsxref("Function")}} вызываемая когда промис завершен.</dd> </dl> <h3 id="Возвращаемое_значение">Возвращаемое значение</h3> @@ -34,13 +34,13 @@ p.finally(() => { <h2 id="Описание">Описание</h2> -<p><code>finally()</code> может быть полезен, если необходимо произвести какие-либо вычисления или очистку, как только <code>Promise</code> (обещание) завершено, вне зависимости от результата.</p> +<p><code>finally()</code> может быть полезен, если необходимо произвести какие-либо вычисления или очистку, как только <code>Promise</code> (промис) завершено, вне зависимости от результата.</p> <p><code>finally()</code> очень схож с вызовом <code>.then(onFinally, onFinally)</code>, однако существует несколько различий:</p> <ul> <li>Использование <code>finally()</code> позволяет избежать двойного объявления одной и той же функции или создания переменной. </li> - <li><code>finally</code> не получает аргументов, так как не существует способа определить, будет ли обещание выполнено успешно или с ошибкой. Данный метод необходимо использовать, если не важна причина ошибки или результат успешного выполнения и, следовательно, нет необходимости её/его передавать.</li> + <li><code>finally</code> не получает аргументов, так как не существует способа определить, будет ли промис выполнен успешно или с ошибкой. Данный метод необходимо использовать, если не важна причина ошибки или результат успешного выполнения и, следовательно, нет необходимости её/его передавать.</li> <li>В отличие от <code>Promise.resolve(2).then(() => {}, () => {})</code> (результатом которого будет resolved-промис, со значением <code>undefined</code>), результатом <code>Promise.resolve(2).finally(() => {})</code> будет resolved-промис со значением <code>2</code>.</li> <li>Аналогично, в отличии от <code>Promise.reject(3).then(() => {}, () => {})</code> (результатом которого будет resolved-промис, со значением <code>undefined</code>), результатом <code>Promise.reject(3).finally(() => {})</code> будет rejected-промис со значением <code>3</code>.</li> </ul> diff --git a/files/ru/web/javascript/reference/global_objects/promise/index.html b/files/ru/web/javascript/reference/global_objects/promise/index.html index f942b4fda7..b4075019a6 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/index.html @@ -5,14 +5,14 @@ tags: - ECMAScript6 - JavaScript - Promise - - Обещания + - Промисы translation_of: Web/JavaScript/Reference/Global_Objects/Promise --- <div>{{JSRef}}</div> <h2 id="Сводка">Сводка</h2> -<p>Объект <strong><code>Promise</code></strong> (промис) используется для отложенных и асинхронных вычислений.</p> +<p>Объект <strong><code>Promise</code></strong> используется для отложенных и асинхронных вычислений.</p> <p>{{EmbedInteractiveExample("pages/js/promise-constructor.html")}}</p> @@ -35,7 +35,7 @@ new Promise(function(resolve, reject) { ... });</pre> <h2 id="Описание">Описание</h2> -<p>Интерфейс <code><strong>Promise</strong></code> (промис) представляет собой обёртку для значения, неизвестного на момент создания промиса. Он позволяет обрабатывать результаты асинхронных операций так, как если бы они были синхронными: вместо конечного результата асинхронного метода возвращается <em>обещание </em>(промис)<em> </em>получить результат в некоторый момент в будущем.</p> +<p>Интерфейс <code><strong>Promise</strong></code> (промис) представляет собой обёртку для значения, неизвестного на момент создания промиса. Он позволяет обрабатывать результаты асинхронных операций так, как если бы они были синхронными: вместо конечного результата асинхронного метода возвращается своего рода <em>обещание</em> (дословный перевод слова "промис") получить результат в некоторый момент в будущем.</p> <p><code>Promise</code> может находиться в трёх состояниях:</p> @@ -115,7 +115,7 @@ new Promise(function(resolve, reject) { ... });</pre> // reject("failure reason"); // неудача });</pre> -<p>Чтобы снабдить функцию функциональностью обещаний, нужно просто вернуть в ней объект <code>Promise</code>:</p> +<p>Чтобы снабдить функцию функциональностью промисов, нужно просто вернуть в ней объект <code>Promise</code>:</p> <pre class="brush: js">function myAsyncFunction(url) { return new Promise((resolve, reject) => { @@ -159,7 +159,7 @@ myFirstPromise.then((successMessage) => { <div id="log"></div></pre> </div> -<p>Данный небольшой пример показывает механизм работы с <code>Promise</code>. Метод <code>testPromise()</code> вызывается при каждом нажатии на {{HTMLElement("button")}}. При этом создаётся промис, которое успешно выполняется при помощи <code>window.setTimeout</code>, со значением <code>'result'</code> в случайном интервале от 1 до 3-х секунд.</p> +<p>Данный небольшой пример показывает механизм работы с <code>Promise</code>. Метод <code>testPromise()</code> вызывается при каждом нажатии на {{HTMLElement("button")}}. При этом создаётся промис, который успешно выполняется при помощи <code>window.setTimeout</code>, со значением <code>'result'</code> в случайном интервале от 1 до 3-х секунд.</p> <p>исполнение промиса протоколируется при помощи продолжения <code>p1.then</code>. Это показывает как синхронная часть метода отвязана от асинхронного завершения промиса.</p> @@ -183,22 +183,22 @@ function testPromise() { // Это всего лишь пример асинхронности window.setTimeout( function() { - // Обещание исполнено! + // Промис исполнен! resolve(thisPromiseCount) }, Math.random() * 2000 + 1000); }); - // Указываем, что сделать с исполненным промисм + // Указываем, что сделать с исполненным промисом p1.then( // Записываем в протокол function(val) { log.insertAdjacentHTML('beforeend', val + - ') Обещание исполнено (асинхронный код завершён) + ') Промис исполнен (асинхронный код завершён) '); }); log.insertAdjacentHTML('beforeend', thisPromiseCount + - ') Обещание создано (синхронный код завершён) + ') Промис создан (синхронный код завершён) '); } </pre> diff --git a/files/ru/web/javascript/reference/global_objects/promise/race/index.html b/files/ru/web/javascript/reference/global_objects/promise/race/index.html index fbce7aeb3c..c77e1fdc1c 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/race/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/race/index.html @@ -4,13 +4,13 @@ slug: Web/JavaScript/Reference/Global_Objects/Promise/race tags: - ECMAScript6 - Promise - - Обещание + - Промис - метод translation_of: Web/JavaScript/Reference/Global_Objects/Promise/race --- <div>{{JSRef}}</div> -<p>Метод<strong> Promise.race(iterable)</strong> возвращает выполненное или отклонённое обещание, в зависимости от того, с каким результатом завершится первое из переданных обещаний, со значением или причиной отклонения этого обещания.</p> +<p>Метод<strong> Promise.race(iterable)</strong> возвращает выполненный или отклонённый промис, в зависимости от того, с каким результатом завершится первый из переданных промисов, со значением или причиной отклонения этого промиса.</p> <p>{{EmbedInteractiveExample("pages/js/promise-race.html")}}</p> @@ -27,11 +27,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/race <h3 id="Возвращаемое_значение">Возвращаемое значение</h3> -<p>Выполненный или отклонённый {{jsxref("Promise")}} в зависимости от результата первого завершённого из переданных в итерируемом объекте обещаний.</p> +<p>Выполненный или отклонённый {{jsxref("Promise")}} в зависимости от результата первого завершённого из переданных в итерируемом объекте промисов.</p> <h2 id="Описание">Описание</h2> -<p>Метод <code>race</code> возвращает <code>Обещание </code>(<code>Promise</code>) с результатом, первого завершённого из переданных обещаний. Т.е. возвратит resolve или reject, в зависимости от того, что случится первым.</p> +<p>Метод <code>race</code> возвращает <code>Promise</code> с результатом, первого завершённого из переданных промисов. Т.е. возвратит resolve или reject, в зависимости от того, что случится первым.</p> <h2 id="Примеры">Примеры</h2> diff --git a/files/ru/web/javascript/reference/global_objects/promise/resolve/index.html b/files/ru/web/javascript/reference/global_objects/promise/resolve/index.html index 1587d254ac..9c10bef5ee 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/resolve/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/resolve/index.html @@ -4,13 +4,13 @@ slug: Web/JavaScript/Reference/Global_Objects/Promise/resolve tags: - ECMAScript6 - JavaScript - - Обещание + - Промис - метод translation_of: Web/JavaScript/Reference/Global_Objects/Promise/resolve --- <div>{{JSRef}}</div> -<p>Метод <code><strong>Promise.resolve(value)</strong></code> возвращает {{jsxref("Promise")}} выполненный с переданным значением. Если переданное значение является thenable - объект (т.е. имеет метод {{jsxref("Promise.then", "\"then\" method")}}), возвращаемое обещание будет следовать thenable - объекту, принимая своё состояние; в ином случае возвращаемое обещание будет выполнено с переданным значением.</p> +<p>Метод <code><strong>Promise.resolve(value)</strong></code> возвращает {{jsxref("Promise")}} выполненный с переданным значением. Если переданное значение является thenable - объект (т.е. имеет метод {{jsxref("Promise.then", "\"then\" method")}}), возвращаемый промис будет следовать thenable - объекту, принимая своё состояние; в ином случае возвращаемый промис будет выполнен с переданным значением.</p> <h2 id="Синтаксис">Синтаксис</h2> @@ -23,7 +23,7 @@ Promise.resolve(thenable); <dl> <dt>value</dt> - <dd>Значение с которым будет выполнено обещание. Может также быть обещанием или объект подобный обещанию (thenable - объект имеющий метод then).</dd> + <dd>Значение с которым будет выполнен промис. Может также быть промисом или объект подобный промису (thenable - объект имеющий метод then).</dd> </dl> <h3 id="Возвращаемое_значение">Возвращаемое значение</h3> @@ -32,7 +32,7 @@ Promise.resolve(thenable); <h2 id="Описание">Описание</h2> -<p><code>Метод Promise.resolve</code> возвращает выполненное обещание (<code>Promise</code>).</p> +<p><code>Метод Promise.resolve</code> возвращает выполненное промис (<code>Promise</code>).</p> <h2 id="Примеры">Примеры</h2> @@ -53,7 +53,7 @@ p.then(function(v) { }); </pre> -<h3 id="Выполнение_с_другим_обещанием_Promise">Выполнение с другим обещанием ( <code>Promise</code>)</h3> +<h3 id="Выполнение_с_другим_промисом_Promise">Выполнение с другим промисом ( <code>Promise</code>)</h3> <pre class="brush: js">var original = Promise.resolve(true); var cast = Promise.resolve(original); diff --git a/files/ru/web/javascript/reference/global_objects/promise/then/index.html b/files/ru/web/javascript/reference/global_objects/promise/then/index.html index 0a347a9778..5bdc241aa9 100644 --- a/files/ru/web/javascript/reference/global_objects/promise/then/index.html +++ b/files/ru/web/javascript/reference/global_objects/promise/then/index.html @@ -58,7 +58,7 @@ p1.then(function(value) { <h3 id="Соединение">Соединение</h3> -<p>Так как метод <code>then</code> возвращает <code>Promise</code> (обещание), вы можете объединить несколько вызовов <code>then</code> в цепочку. Значения возвращаемые из onFulfilled или onRejected колбэков будут автоматически обёрнуты в обещание.</p> +<p>Так как метод <code>then</code> возвращает промис (<code>Promise</code>), вы можете объединить несколько вызовов <code>then</code> в цепочку. Значения возвращаемые из колбэков onFulfilled или onRejected будут автоматически обёрнуты в промис.</p> <pre class="brush: js notranslate">var p2 = new Promise(function(resolve, reject) { resolve(1); @@ -76,10 +76,10 @@ p2.then(function(value) { }); </pre> -<p>Вы также можете соединить одну функцию, имеющую подобную с обещаниями API, с другой функцией.</p> +<p>Вы также можете соединить одну функцию, имеющую подобный с промисами API, с другой функцией.</p> <pre class="brush: js notranslate">function fetch_current_data() { - // API функции fetch() возвращает обещание. Эта функция + // API функции fetch() возвращает промис. Эта функция // имеет аналогичный API, за исключением значения в случае выполнения return fetch("current-data.json").then((response) => { if (response.headers.get("content-type") != "application/json") { @@ -87,13 +87,13 @@ p2.then(function(value) { } var j = response.json(); // можем что-нибудь делать с j - return j; // в случае выполнения обещания, значение + return j; // в случае выполнения промиса, значение // передаётся в fetch_current_data().then() }); } </pre> -<p>Если onFulfilled возвращает обещание, возвращаемое значение может быть выполнено (resolved) / отклонено (rejected) обещанием.</p> +<p>Если onFulfilled возвращает промис, возвращаемое значение может быть выполнено (resolved) / отклонено (rejected) промисом.</p> <pre class="brush: js notranslate">function resolveLater(resolve, reject) { setTimeout(function () { @@ -108,7 +108,7 @@ function rejectLater(resolve, reject) { var p1 = Promise.resolve("foo"); var p2 = p1.then(function() { - // Возвращает обещание, которое будет разрешено значением 10 через 1 секунду + // Возвращает промис, который будет разрешен значением 10 через 1 секунду return new Promise(resolveLater); }); p2.then(function(v) { @@ -119,7 +119,7 @@ p2.then(function(v) { }); var p3 = p1.then(function() { -// Возвращает обещание, которое будет отброшено значением 20 через 1 секунду +// Возвращает промис, который будет отброшен значением 20 через 1 секунду return new Promise(rejectLater); }); p3.then(function(v) { diff --git a/files/ru/web/javascript/reference/global_objects/webassembly/compile/index.html b/files/ru/web/javascript/reference/global_objects/webassembly/compile/index.html index a3c8f5e34f..8cbcd47e36 100644 --- a/files/ru/web/javascript/reference/global_objects/webassembly/compile/index.html +++ b/files/ru/web/javascript/reference/global_objects/webassembly/compile/index.html @@ -20,13 +20,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly/compile <h3 id="Возвращаемое_значение">Возвращаемое значение</h3> -<p>Обещание, (<code>Promise</code>), которое разрешает объект {{jsxref("WebAssembly.Module")}}, представляющий скомпилированный модуль.</p> +<p>Промис (<code>Promise</code>), который разрешает объект {{jsxref("WebAssembly.Module")}}, представляющий скомпилированный модуль.</p> <h3 id="Исключения">Исключения</h3> <ul> <li>Если <code>bufferSource</code> не является <a href="/en-US/docs/Web/JavaScript/Typed_arrays">typed array</a>, генерируется {{jsxref("TypeError")}}.</li> - <li>Если компиляция не удалась, обещание отклоняется с помощью {{jsxref("WebAssembly.CompileError")}}.</li> + <li>Если компиляция не удалась, промис отклоняется с помощью {{jsxref("WebAssembly.CompileError")}}.</li> </ul> <h2 id="Примеры">Примеры</h2> diff --git a/files/ru/web/javascript/reference/global_objects/webassembly/compilestreaming/index.html b/files/ru/web/javascript/reference/global_objects/webassembly/compilestreaming/index.html index 79b702b091..fd49c70591 100644 --- a/files/ru/web/javascript/reference/global_objects/webassembly/compilestreaming/index.html +++ b/files/ru/web/javascript/reference/global_objects/webassembly/compilestreaming/index.html @@ -15,24 +15,24 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly/compileStrea <dl> <dt><em>source</em></dt> - <dd>Обещание, или {{domxref("Response")}}, которое будет выполнено с одним, представляющим основной источник модулем <code>.wasm</code>, который вы хотите передать и скомпилировать.</dd> + <dd>Промис, или {{domxref("Response")}}, который будет выполнен с одним, представляющим основной источник модулем <code>.wasm</code>, который вы хотите передать и скомпилировать.</dd> </dl> <h3 id="Возвращаемое_значение">Возвращаемое значение</h3> -<p>Обещание, ( <code>Promise</code>), которое разрешает объект {{jsxref("WebAssembly.Module")}}, представляющий скомпилированный модуль.</p> +<p>Промис (<code>Promise</code>), который разрешает объект {{jsxref("WebAssembly.Module")}}, представляющий скомпилированный модуль.</p> <h3 id="Исключения">Исключения</h3> <ul> <li>Если <code>bufferSource</code> не является <a href="/en-US/docs/Web/JavaScript/Typed_arrays">typed array</a>, генерируется {{jsxref("TypeError")}}.</li> - <li>Если компиляция не удалась, обещание отклоняется с помощью {{jsxref("WebAssembly.CompileError")}}.</li> + <li>Если компиляция не удалась, промис отклоняется с помощью {{jsxref("WebAssembly.CompileError")}}.</li> </ul> <h2 id="Примеры">Примеры</h2> <p>Следующий пример (см. Нашу демонстрацию <a href="https://github.com/mdn/webassembly-examples/blob/master/js-api-examples/compile-streaming.html">compile-streaming.html</a> на GitHub и <a href="https://mdn.github.io/webassembly-examples/js-api-examples/compile-streaming.html">view it live</a>) напрямую передаёт модуль .wasm из исходника, затем компилирует его в объект {{jsxref("WebAssembly.Module")}}.<br> - Поскольку функция <code>compileStreaming()</code> принимает обещание для объекта {{domxref("Response")}}, вы можете напрямую передать ему вызов {{domxref("WindowOrWorkerGlobalScope.fetch()")}}, и он передаст ответ в выполняемую функцию.</p> + Поскольку функция <code>compileStreaming()</code> принимает промис для объекта {{domxref("Response")}}, вы можете напрямую передать ему вызов {{domxref("WindowOrWorkerGlobalScope.fetch()")}}, и он передаст ответ в выполняемую функцию.</p> <pre class="brush: js">var importObject = { imports: { imported_func: arg => console.log(arg) } }; |