Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
objavlenie_promisi [2024/01/14 14:37] tro |
objavlenie_promisi [2024/01/25 19:27] (текущий) tro |
||
|---|---|---|---|
| Строка 6: | Строка 6: | ||
| * отклонен (reject) | * отклонен (reject) | ||
| ===== обявление промиса (Promise) ===== | ===== обявление промиса (Promise) ===== | ||
| + | При створенні промісу всередині буде відразу вконана та дія. Сюди загоняємо те що повинно буде виконано у промісі. | ||
| < | < | ||
| const myPromise = new Promise ((resolve, reject)=> | const myPromise = new Promise ((resolve, reject)=> | ||
| Строка 12: | Строка 13: | ||
| </ | </ | ||
| ===== Обробка резуьтата промиса (.then) ===== | ===== Обробка резуьтата промиса (.then) ===== | ||
| + | В методах then прописуємо що буде виконано коли настане подія вдалого, | ||
| + | < | ||
| + | promise.then(onFullFild).catch(onReject); | ||
| + | </ | ||
| < | < | ||
| myPromse | myPromse | ||
| Строка 141: | Строка 146: | ||
| </ | </ | ||
| ===== Promise.resolve() і Promise.reject() ===== | ===== Promise.resolve() і Promise.reject() ===== | ||
| - | | + | |
| * Так створюється успішно виконаний проміс через Promise.resolve(): | * Так створюється успішно виконаний проміс через Promise.resolve(): | ||
| < | < | ||
| Строка 166: | Строка 171: | ||
| Promise.all([p1, | Promise.all([p1, | ||
| .then(values => console.log(values)); | .then(values => console.log(values)); | ||
| + | .catch(error => console.log(error)); | ||
| + | </ | ||
| + | | ||
| + | ===== Promise.allSettled() ===== | ||
| + | Також дозволяє одночасно обробити кілька промісів та отримати їхні результати. | ||
| + | Відмінність від Promise.all полягає в тому, що метод Promise.allSettled() **чекає виконання всіх промісів незалежно від того, чи були деякі або навіть всі проміси відхилені**. | ||
| + | ===== Promise.race ===== | ||
| + | приймає масив промісів і повертає " | ||
| + | < | ||
| + | const p1 = new Promise((resolve, | ||
| + | setTimeout(() => resolve(1), 1000); | ||
| + | }); | ||
| + | |||
| + | const p2 = new Promise((resolve, | ||
| + | setTimeout(() => reject(2), 2000); | ||
| + | }); | ||
| + | |||
| + | Promise.race([p1, | ||
| + | .then(value => console.log(value)); | ||
| .catch(error => console.log(error)); | .catch(error => console.log(error)); | ||
| </ | </ | ||