⊗jsSpACEx 158 of 294 menu

JavaScript'te Asenkron Geri Aramalarda İstisnalar

make parametresine dizide var olmayan bir elemanın numarası verilmişse - bu bir istisnai durumdur. Bildiğiniz gibi, asenkron bir fonksiyon içinde oluşan istisnalar, try-catch bloğu ile yakalanamaz. Bizim durumumuzda, make veya geri çağırma fonksiyonu içinde oluşan bir istisna yakalanmayacaktır:

try { make(10, function(res) { console.log(res); }); } catch(err) { // yakalanmayacak }

Geri arama yaklaşımında istisnalar şu şekilde çalışır: geri arama fonksiyonunun ilk parametresine sonuç, ikinci parametresine ise hata gönderilir. Bu durumda hata işleme şu şekilde yapılır:

make(10, function(res, err) { if (!err) { console.log(res); // hata oluşmadı, sonucu yazdıralım } else { console.log(err); // hata oluştu, hata metnini yazdıralım } });

Şimdi make fonksiyonumuzun kodunu anlatılanlara göre düzenleyelim:

function make(num, callback) { setTimeout(function() { let arr = [1, 2, 3, 4, 5]; let err; if (arr[num] === undefined) { err = 'elem not exists'; // hata metni } else { err = null; // hata yok } callback(arr[num], err); }, 3000); }
Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet