Promise()
Promise() konstruktori
Promise() konstruktori Promise obyektlarini yaratadi.
Promise asinxron amalning yakuniy muvaffaqiyatli bajarilishi yoki muvaffaqiyatsizligini ifodalaydi.
Promise obyektlari odatda asinxron funksiyalar va API’lar bilan ishlatiladi.
Sintaksis
new Promise(executor)
Parametrlar
| Parametr | Tavsif |
|---|---|
| executor | resolve va reject funksiyalarini qabul qiladigan funksiya. |
Qaytariladigan qiymat
| Chaqiruv | Qaytaradi |
|---|---|
new Promise(...) |
Promise obyekti |
Promise yaratish
Misol
const myPromise = new Promise(function(resolve, reject) {
resolve("Success");
});
Promise holatlari
Promise uchta holatdan birida bo‘lishi mumkin:
- pending
- fulfilled
- rejected
| Holat | Tavsif |
|---|---|
| pending | Boshlang‘ich holat |
| fulfilled | Amal muvaffaqiyatli bajarildi |
| rejected | Amal muvaffaqiyatsiz tugadi |
Promise natijasidan foydalanish
Misol
myPromise.then(function(value) {
console.log(value);
});
Promise metodlari
then()catch()finally()
Statik Promise metodlari
Promise.resolve()Promise.reject()Promise.all()Promise.allSettled()Promise.any()Promise.race()
Promise natijasidan odatda then(), catch() yoki await orqali foydalanish kerak.
Obyektlar iyerarxiyasi
Promise obyektlari Object’dan meros oladi.
Object └─ Promise
Promise bo‘yicha savollar
| Savol | Javob |
|---|---|
| Konstruktor turi | Function |
| Yaratadi | Promise obyektlari |
| Meros oladi | Object |
Brauzerlarda qo‘llab-quvvatlash
Promise() — ECMAScript6 (ES6 2015) imkoniyati.
JavaScript 2015 2017-yil iyunidan beri barcha brauzerlarda qo‘llab-quvvatlanadi:
| Chrome 51 |
Edge 15 |
Firefox 54 |
Safari 10 |
Opera 38 |
| 2016-yil may | 2017-yil aprel | 2017-yil iyun | 2016-yil sentabr | 2016-yil iyun |
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
