Login Sign Up
Advert
Your ad spot
Reserve this exclusive slot for the selected period.
Buy advertising →
Telegram community logo - Дмитро Охріменко
Added 06 Dec 2025 🌐 UK

Дмитро Охріменко

@okhrimenko_dm
Number of subscribers: 835
Photos: 10
Videos: 3
Links: 64
Description:
💼 Co-Founder: ITVDN та CyberBionic Systematics 🎓 Розробка та консалтинг в сфері IT понад 18 років 💻 Ментор та автор курсів Miй інстаграм https://www.instagram.com/dm.okhrimenko Чат для лампового спілкування - https://t.me/+tVRybZbaI_k1ZThi
Source

Дмитро Охріменко | Використання PromiseЦе пост з серії постів про асинхронний код у JSPro...

Telegram community logo - Дмитро Охріменко Дмитро Охріменко @okhrimenko_dm
856 Views/Reach 2025-10-08 10:19 Message №93
Використання Promise

Це пост з серії постів про асинхронний код у JS

Promise - це об’єкт, який представляє асинхронну операцію. У перекладі з англійської promise означає «обіцянка». Можна уявити, що це обіцянка від браузера надати в майбутньому або результат операції, або помилку, пов’язану з її виконанням.
Приклад використання: перепишемо попередню функцію downloadImage, щоб вона повертала Promise.

let promise = downloadImage(url1);
promise.then(image => document.body.append(image));

Тут ми все одно використовуємо callback-функцію, але передаємо її вже в метод .then() об’єкта promise. Це важливий момент:
- тепер асинхронна операція має об’єктне представлення, яке можна передавати як параметр у різні частини коду;
- можна будувати ланцюжки промісів, позбуваючись вкладеності, яка виникала з callback.

Приклад:
downloadImage(url1) // отримуємо проміс
.then(image => { // вказуємо що робити коли promise перейде в стан resolved
document.body.append(image);
return downloadImage(url2); // виконуємо метод, який повертає promise
})
.then(image => { // результат роботи попереднього промісу передається як значення
document.body.append(image);
return downloadImage(url3);
})
.then(image => {
document.body.append(image);
});

Тепер код виглядає лінійним і набагато зручнішим для супроводу.
У прикладах вище ми не розглядали, як саме створюється Promise, адже важливо зрозуміти мотивацію використання цих об’єктів. Тим більше, що більшість API браузера вже повертають готові проміси. Наприклад:

fetch('<https://jsonplaceholder.typicode.com/users>')
.then(res => res.json());

що хочете детальніше розібратися зі створенням Promise вручну - перегляньте документацію на MDN або мій відео урок на ITVDN.