Middle+
JavaScriptda Promise nima? Promisaning holatlari va unga ishlash usullari haqida gapiring.
sobes.tech AI
AIdan javob
JavaScript'da Promise, kelajakda muvaffaqiyatli yoki xatolik bilan yakunlanishi mumkin bo'lgan asinxron operatsiyaning natijasini ifodalovchi ob'ekt.
Promise holatlari:
- pending (kutish holati) — boshlang'ich holat, operatsiya hali yakunlanmagan.
- fulfilled (muvaffaqiyatli) — operatsiya muvaffaqiyatli yakunlandi, natija mavjud.
- rejected (rad etilgan) — operatsiya xato bilan yakunlandi.
Promise bilan ishlash uchun asosiy metodlar:
.then(onFulfilled, onRejected)— muvaffaqiyat va xato uchun handlerlar qo'shadi..catch(onRejected)— xato uchun handler qo'shadi (teng keladi.then(null, onRejected)bilan)..finally(onFinally)— Promise yakunlangach, natijadan qat'i nazar, funksiyani bajaradi.
Misol:
const promise = new Promise((resolve, reject) => {
setTimeout(() => {
const success = true;
if (success) {
resolve('Ma`lumotlar olindi');
} else {
reject('Xato');
}
}, 1000);
});
promise
.then(result => console.log(result))
.catch(error => console.error(error))
.finally(() => console.log('Operatsiya yakunlandi'));