⊗jsSpPrmSta 166 of 294 menu

JavaScript-də Promise-in vəziyyətləri

Promise üç vəziyyətdən birində ola bilər. Yaradıldıqda Promise gözləmə vəziyyətində olur (pending), sonra isə yerinə yetirilmiş (fulfilled) vəziyyətinə keçə bilər və nəticə qaytara bilər, ya da rədd edilmiş (rejected) vəziyyətinə keçə bilər, səbəb qaytara bilər. Aşağıdakı kodu işə salmaqla bir vəziyyətdən digərinə keçidi izləyə bilərsiniz:

let promise = new Promise(function(resolve, reject) { setTimeout(function() { let isError = false; // ya true, ya da false qoyun if (!isError) { resolve([1, 2, 3, 4, 5]); } else { reject('error in promise'); } }, 3000); }); setInterval(function() { console.log(promise); // hər saniyə promise-i konsola çıxarırıq }, 1000);

Nəzərə alın ki, fulfilledrejected vəziyyətləri dəyişməzdir: əgər promise bu vəziyyətlərdən birinə keçibsə, artıq digərinə keçə bilməz. Nümunəyə baxaq. Aşağıdakı kodda reject çağırışı daha tez baş verəcək, buna görə də resolve çağırışı laqeyd qalınacaq:

let promise = new Promise(function(resolve, reject) { setTimeout(() => reject(new Error('error')), 1000); setTimeout(() => resolve('ignored'), 2000); });

Müəyyən müddətdən sonra uğurla yerinə yetiriləcək bir promise yaradın. Onu konsola çıxarın və ilkin vəziyyətini və tamamlanmış vəziyyətini öyrənin.

Müəyyən müddətdən sonra uğursuzluqla nəticələnəcək bir promise yaradın. Onu konsola çıxarın və ilkin vəziyyətini və tamamlanmış vəziyyətini öyrənin.

Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et