Asinxron kod ilə işləmək üçün hansı üsulları bilirsiniz?
sobes.tech Süni İntellekt
AI-dan cavab
Callbacks, Promises, async/await.
Callbacks: Digər funksiyalara arqument kimi verilən və asinxron əməliyyat tamamlandıqdan sonra çağırılan funksiyalar.
Promises: Callbacks ilə müqayisədə daha rahat idarəetmə yolu təqdim edən obyektlər. Onların vəziyyətləri pending, fulfilled və rejected olur.
// Promise nümunəsi
function asyncOperation() {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve('Əməliyyat uğurla tamamlandı!');
}, 1000);
});
}
asyncOperation()
.then(result => console.log(result))
.catch(error => console.error(error));
async/await: Promises üzərində sintaktik şəkər, bu asinxron kodu daha çox sinxron kimi göstərir və oxumağı asanlaşdırır.
// async/await nümunəsi
async function performAsyncOperation() {
try {
const result = await asyncOperation();
console.log(result);
} catch (error) {
console.error(error);
}
}
performAsyncOperation();
Yöntəmlərin müqayisəsi:
| Yöntəm | Oxuma / Dəstək | Xəta idarəsi | Axın idarəsi |
|---|---|---|---|
| Callbacks | Daha az oxunaqlı (Callback Hell) | Çətin | Çətin |
| Promises | Təkmilləşdirilmiş | Rahat (.catch) | Rahat (.then, .catch) |
| async/await | Ən yaxşı | Rahat (try...catch) | Rahat (await) |
Müasir Node.js tətbiqlərində ən çox üstünlük verilən üsul async/await istifadə etməkdir, onun oxunaqlığı və rahatlığı üçün. Promises hələ də vacib alətdir, xüsusən aşağı səviyyəli həyata keçirilmədə. Callbacks köhnə kodda və ya Node.js nüvəsinin aşağı səviyyəli əməliyyatlarında istifadə olunur.