Junior
JavaScript-də async/await quruluşu haqqında danış.
sobes.tech Süni İntellekt
AI-dan cavab
async/await — promislər üzərində sintaktik şəkərdir və daha sadə yazılan, sinxron görünən asinxron kod üçün nəzərdə tutulmuşdur.
async söz ilə işarələnmiş funksiya həmişə bir vəd (promise) qaytarır. async funksiyası daxilində await açar sözündən istifadə etmək mümkündür.
await operatoru vəd çağırışından əvvəl istifadə olunur. O, async funksiyasının icrasını vəd həll olunana (resolved) və ya rədd olunana (rejected) qədər dayandırır. Vədin nəticəsi (uğur və ya səhv) await tərəfindən qaytarılır.
Əgər await ilə işarələnmiş vəd rədd olunarsa, bu, istisna yaradır və try...catch bloku ilə tutulabilir.
// async/await istifadə nümunəsi
async function fetchData() {
try {
// Asinxron əməliyyatın tamamlanmasını gözləyirik (məsələn, API sorğusu)
const response = await fetch('https://api.example.com/data');
// Cavabı JSON-ə çeviririk
const data = await response.json();
// Alınan məlumatları göstəririk
console.log(data);
} catch (error) {
// Hər hansı səhvi tuturuq
console.error('Məlumatların alınmasında səhv:', error);
}
}
// async funksiyanı çağırırıq
fetchData();
// Vəd qaytaran async funksiya nümunəsi
async function getValue() {
return 10; // Bu avtomatik olaraq Promise.resolve(10) ilə əhatə olunur
}
getValue().then(value => console.log(value)); // 10 göstərəcək
async/await-in üstünlükləri:
- Kodun oxunaqlılığı: Asinxron kod daha çox sinxron kimi görünür
- Səhv idarəetməsi: Standart
try...catchblokları ilə daha asan - Daha az iç-içəlik: "Callback cəhənnəmi" və ya uzun
.then()zəncirləri qaçınılır
Əhəmiyyətlidir ki, await yalnız async funksiyalar daxilində istifadə oluna bilər.