⊗jsSpPrmSta 166 of 294 menu

JavaScript-ում պրոմիսի վիճակները

Պրոմիսը կարող է գտնվել երեք վիճակներից մեկում։ Ստեղծման պահին պրոմիսը գտնվում է սպասման մեջ (pending), ապա կարող է դառնալ կատարված (fulfilled)՝ վերադարձնելով ստացված արդյունքը, կամ մերժված (rejected)՝ վերադարձնելով ձախողման պատճառը։ Դուք կարող եք տեսնել մի վիճակից մյուսին անցումը՝ գործարկելով հետևյալ կոդը։

let promise = new Promise(function(resolve, reject) { setTimeout(function() { let isError = false; // դրեք կամ true, կամ false if (!isError) { resolve([1, 2, 3, 4, 5]); } else { reject('error in promise'); } }, 3000); }); setInterval(function() { console.log(promise); // ամեն վայրկյան տպում ենք պրոմիսը կոնսոլում }, 1000);

Հաշվի առեք, որ fulfilled և rejected վիճակները անփոփոխ են․ եթե պրոմիսը անցել է այս վիճակներից մեկին, ապա այլևս չի կարող անցնել մյուսին։ Եկեք նայենք օրինակով։ Հետևյալ կոդում reject կանչը կտեղի ունենա ավելի շուտ, ուստի resolve կանչը կանտեսվի։

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

Ստեղծեք մի պրոմիս, որը որոշ ժամանակ անց կկատարվի հաջողությամբ։ Տպեք այն կոնսոլում և ուսումնասիրեք դրա սկզբնական և ավարտված վիճակները։

Ստեղծեք մի պրոմիս, որը որոշ ժամանակ անց կձախողվի։ Տպեք այն կոնսոլում և ուսումնասիրեք դրա սկզբնական և ավարտված վիճակները։

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել