⊗jsSpPrmEx 163 of 294 menu

JavaScript-də Promise-lərdə İstisna Halları

Gəlin indi promise daxilində baş verən istisna hallarını necə idarə edəcəyimizi öyrənək. Belə bir vəziyyət yaranması halında, biz promise-i xüsusi bir rədd etmə funksiyası vasitəsilə rədd etməliyik, hansı ki, avtomatik olaraq promise funksiyasının ikinci parametrinə daxil olur:

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

Promise funksiyasının daxilində biz resolve çağırmalıyıq, əgər hər şey normal getdisə, ya da reject, əgər istisna halları yarandısa:

let promise = new Promise(function(resolve, reject) { setTimeout(function() { let isError = false; if (!isError) { resolve([1, 2, 3, 4, 5]); // promise məlumatı } else { reject('promise-də xəta'); // sizin xəta mətni } }, 3000); });

Sonra, then metodunda parametr olaraq bir deyil, iki funksiya ötürməlisiniz: birincisi, əgər promise normal işlədisə (resolve oldu) işləyəcək, ikincisi isə - əgər xəta ilə işlədisə (reject oldu):

promise.then( function(result) { console.log(result); // promise nəticəsini göstərəcək }, function(error) { console.log(error); // xəta mətni göstərəcək } );

Bir qayda olaraq, yuxarıda göstərilən kod daha yığcam şəkildə, belə yazılır:

promise.then(function(result) { console.log(result); // promise nəticəsini göstərəcək }, function(error) { console.log(error); // xəta mətni göstərəcək });

0-dan 5-ə qədər təsadüfi ədədlər yaradan asinxron kod yazın. Bütün bunları promise içinə alın. Promise nəticə olaraq vahidin yaradılan ədədə bölünməsinin nəticəsini qaytarsın. Promise-in sıfıra bölmə baş verdikdə xəta ilə, digər bütün hallarda isə uğurla yerinə yetirilməsini təmin edin.

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