diff options
author | Alexey Pyltsyn <lex61rus@gmail.com> | 2021-04-10 14:03:18 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-10 14:03:18 +0300 |
commit | 0d2f5f0e69eda5697000ca8bff402cf92725f432 (patch) | |
tree | 2bc2f70d14ad430feb5a298dd4d95ffae021444e /files/ru/web/javascript/guide/using_promises | |
parent | ae1faf3f33379f8b748b968d477a6831afc0aa67 (diff) | |
download | translated-content-0d2f5f0e69eda5697000ca8bff402cf92725f432.tar.gz translated-content-0d2f5f0e69eda5697000ca8bff402cf92725f432.tar.bz2 translated-content-0d2f5f0e69eda5697000ca8bff402cf92725f432.zip |
Unify Russian translation of "promise" (#319)
* Unify Russian translation of "promise"
* Apply suggestions from code review
Co-authored-by: Artem Shibakov <shibakow@gmail.com>
Co-authored-by: Alexander Myshov <myshov@users.noreply.github.com>
Co-authored-by: Artem Shibakov <shibakow@gmail.com>
Co-authored-by: Alexander Myshov <myshov@users.noreply.github.com>
Diffstat (limited to 'files/ru/web/javascript/guide/using_promises')
-rw-r--r-- | files/ru/web/javascript/guide/using_promises/index.html | 12 |
1 files changed, 6 insertions, 6 deletions
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) { |