Skip to content

Commit eafeb04

Browse files
committed
feat: Fixed language errors in 1-js/11-async/02-promise/basics
1 parent bd3bfb0 commit eafeb04

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

1-js/11-async/02-promise-basics/article.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
Уявіть, що ви топ співак, фани якого постійно дошкуляють запитаннями про майбутній сингл.
44

5-
Щоб отримати передишку, ви обіцяєте розіслати їм сингл, коли він буде випущений. Ви даєте своїм фанатам список. В який вони можуть записати свій e-mail, на який вони отримають пісню як тільки вона вийде. І навіть якщо щось піде не так, наприклад, в студії станеться пожежа і ви не зможете випустити пісню, вони і про це отримають сповіщення.
5+
Щоб отримати передишку, ви обіцяєте розіслати їм сингл, коли він буде випущений. Ви даєте своїм фанатам список. В який вони можуть записати свій e-mail, на який вони отримають пісню як тільки вона вийде. І навіть якщо щось піде не так, наприклад, в студії станеться пожежа і ви не зможете випустити пісню, вони й про це отримають сповіщення.
66

77
Всі щасливі: ви, тому що вам більше не дошкуляють, а фанати, тому що можуть більше не переживати що пропустять новий сингл.
88

@@ -12,7 +12,7 @@
1212
2. Є код–"споживач", котрий очікує отримати результат від коду-"виробника", як тільки той буде готовий. Цей результат може знадобитися багатьом функціям. Це -- "фанати"
1313
3. *Promise* (надалі будемо називати такий об’єкт промісом) -- це спеціальний об’єкт в JavaScript, котрий зв’язує код-"виробника" і "споживача" разом. В контексті нашої аналогії -- це "список підписки". Код-"виробник" виконується стільки часу, скільки потрібно щоб отримати результат, а проміс — як тільки результат готовий, робить його доступним для коду який підписався на конкретний проміс.
1414

15-
Аналогія не зовсім точна, оскільки реалізація промісів в JavaScript набагато складніша ніж простий список підписок: вони володіють додатковими можливостями і обмеженнями. Але для початку варто почати з простішого.
15+
Аналогія не зовсім точна, оскільки реалізація промісів в JavaScript набагато складніша ніж простий список підписок: вони володіють додатковими можливостями й обмеженнями. Але для початку варто почати з простішого.
1616

1717
Синтаксис створення проміса:
1818

@@ -99,7 +99,7 @@ let promise = new Promise(function(resolve, reject) {
9999
});
100100
```
101101
102-
Ідея в тому що функція виконавець може мати тільки один результат чи помилку.
102+
Ідея в тому, що функція виконавець може мати тільки один результат чи помилку.
103103
104104
Зверніть увагу, що методи `resolve`/`reject` можуть прийняти тільки один аргумент (або жодного), а всі додаткові аргументи будуть проігноровані.
105105
````
@@ -276,11 +276,11 @@ new Promise((resolve, reject) => {
276276
277277
У підсумку:
278278
279-
- Обробник `finally` не отримує результат попереднього обробника (у нього немає аргументів). Замість цього цей результат передається наступному підходящому обробнику.
279+
- Обробник `finally` не отримує результат попереднього обробника (у нього немає аргументів). Замість цього цей результат передається наступному відповідному обробнику.
280280
- Якщо обробник `finally` щось повертає, це буде ігноруватися.
281281
- Якщо виникає помилка в `finally`, виконання переходить до найближчого обробника помилок.
282282
283-
Ці особливості є корисними і забезпечують правильну роботу, якщо ми використовуємо `finally` так, як це передбачено: для загальних процедур очищення.
283+
Ці особливості є корисними й забезпечують правильну роботу, якщо ми використовуємо `finally` так, як це передбачено: для загальних процедур очищення.
284284
285285
````smart header="На завершених промісах обробники запускаються одразу"
286286
Якщо проміс в стані очікування, `.then/catch/finally` будуть на нього чекати.
@@ -305,7 +305,7 @@ promise.then(alert); // виведе "завершено!"
305305

306306
Тепер, розгляньмо декілька прикладів з тим як проміси можуть облегшити нам написання асинхронного коду.
307307

308-
В нас є функція `loadScript` для завантаження скрипта з попереднього розділу.
308+
В нас є функція `loadScript` для завантаження скрипту з попереднього розділу.
309309

310310
Згадаймо як виглядає варіант з колбеком:
311311

@@ -323,7 +323,7 @@ function loadScript(src, callback) {
323323

324324
Тепер перепишемо її використавши проміс.
325325

326-
Новій функції `loadScript` більше не потрібен колбек. Замість цього вона буде створювати і повертати об’єкт проміса, котрий перейде в стан "успішно завершений", коли завантаження завершиться. Зовнішній код також може додавати обробників ("підписників") використовуючи `.then`:
326+
Новій функції `loadScript` більше не потрібен колбек. Замість цього вона буде створювати й повертати об’єкт проміса, котрий перейде в стан "успішно завершений", коли завантаження завершиться. Зовнішній код також може додавати обробників ("підписників") використовуючи `.then`:
327327

328328
```js run
329329
function loadScript(src) {

0 commit comments

Comments
 (0)