⊗jsSpPrmEx 163 of 294 menu

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

Եկեք այժմ սովորենք մշակել պրոմիսի ներսում առաջացած իսկույն իրավիճակները: Նման իրավիճակի առաջացման դեպքում մենք պետք է մերժենք պրոմիսը օգտագործելով մերժման հատուկ ֆունկցիան, որը ավտոմատ կերպով հայտնվում է պրոմիսի ֆունկցիայի երկրորդ պարամետրում:

let promise = new Promise(function(resolve, reject) { setTimeout(function() { ... }, 3000); });

Պրոմիսի ֆունկցիայի ներսում մենք պետք է կանչենք resolve, եթե ամեն ինչ անցել է նորմալ, կամ reject, եթե առաջացել է իսկույն իրավիճակ:

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

Այնուհետև then մեթոդում պարամետրերով դուք պետք է փոխանցեք ոչ թե մեկ, այլ երկու ֆունկցիա՝ առաջինը կգործի, եթե պրոմիսը աշխատել է նորմալ (⁅d⁼rezolvvel⁼/d⁆), իսկ երկրորդը՝ եթե աշխատել է սխալով (⁅d⁼zaredzhektvel⁼/d⁆):

promise.then( function(result) { console.log(result); // կարտածի պրոմիսի արդյունքը }, function(error) { console.log(error); // կարտածի սխալի տեքստը } );

Որպես կանոն, վերոնշյալ կոդը գրառում են ավելի կոմպակտ, ահա այսպես:

promise.then(function(result) { console.log(result); // կարտածի պրոմիսի արդյունքը }, function(error) { console.log(error); // կարտածի սխալի տեքստը });

Ստեղծեք ասինխրոն կոդ, որը կգեներացնի պատահական թվեր 0-ից մինչև 5: Ծրագրավորեք այս ամենը պրոմիսի մեջ: Թող պրոմիսն իր արդյունքում վերադարձնի մեկը գեներացված թվի վրա բաժանելու արդյունքը: Թող պրոմիսը կատարվի սխալով, եթե տեղի է ունեցել զրոյի վրա բաժանում, և հաջողությամբ մնացած բոլոր դեպքերում:

Հայերեն
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-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել