Asinxron çağırışlar yazmaq üçün istifadə etdiyiniz alətləri adlandırın.
sobes.tech Süni İntellekt
AI-dan cavab
JavaScript asinxron çağırışlarla işləmək üçün müxtəlif alətlər təklif edir:
-
Callback funksiyaları: Klassik yanaşma, burada funksiya başqa bir funksiyaya arqument kimi verilir və asinxron əməliyyat tamamlandıqdan sonra icra olunur.
-
Promises: Gələcəkdəki dəyəri və ya xətanı təmsil edən obyektlər. Asinxron çağırışların zəncirini sadələşdirir və səhv idarəsini asanlaşdırır.
// Promises istifadəsi nümunəsi fetch('/api/data') .then(response => response.json()) // Uğurlu cavabın işlənməsi .then(data => console.log(data)) // Alınan məlumatlarla işləmək .catch(error => console.error('Xəta:', error)); // Xəta idarəsi -
Async/await: Promises üzərində sintaktik şəkər, bu, asinxron kodu daha çox sinxron tərzdə yazmağa imkan verir, bu da oxumağı asanlaşdırır.
// Async/await istifadəsi nümunəsi async function fetchData() { try { const response = await fetch('/api/data'); // fetch-in tamamlanmasını gözləyir const data = await response.json(); // JSON-un parse edilməsini gözləyir console.log(data); } catch (error) { console.error('Xəta:', error); } } fetchData(); -
XMLHttpRequest (XHR): Brauzerdə HTTP sorğularını yerinə yetirmək üçün əsas API.
fetch-ə nisbətən aşağı səviyyəli və daha çox kod tələb edir.// XMLHttpRequest istifadəsi nümunəsi const xhr = new XMLHttpRequest(); xhr.open('GET', '/api/data', true); // Asinxron sorğu xhr.onload = function() { if (xhr.status >= 200 && xhr.status < 300) { console.log(JSON.parse(xhr.responseText)); } else { console.error('Xəta:', xhr.statusText); } }; xhr.onerror = function() { console.error('Şəbəkə xətası'); }; xhr.send(); -
Fetch API: Müasir və daha çevik API, promiselərə əsaslanır.
// Fetch API istifadəsi nümunəsi fetch('/api/data') .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error('Xəta:', error)); -
HTTP sorğuları ilə işləmək üçün kitabxanalar: Məsələn,
axios(brauzer və Node.js üçün) və yajQuery.ajax(). Onlar asinxron sorğuları sadələşdirir və standartlaşdırır.// Axios istifadəsi nümunəsi axios.get('/api/data') .then(response => console.log(response.data)) .catch(error => console.error('Xəta:', error));
Alət seçimi vəzifənin xüsusiyyətlərindən və layihənin kontekstindən asılıdır. Fetch və async/await müasir və tövsiyə olunan yanaşmalardır.