async ve await, JavaScript'te asenkron (zamanı belli olmayan, örneğin sunucudan veri bekleyen) işlemleri sanki sıradan sıralı kodmuş gibi yazmanı sağlar. Böylece iç içe .then() zincirlerinden kurtulursun.
Promise nedir?
Bir Promise, ileride tamamlanacak bir işlemin sonucunu temsil eder (örneğin bir ağ isteği). await, bu sonuç gelene kadar bekler.
async fonksiyon
async function selamla() {
return 'Merhaba'; // otomatik Promise döner
}
selamla().then(m => console.log(m));
await ile bekleme
async function veriGetir() {
const cevap = await fetch('/api/veri');
const veri = await cevap.json();
return veri;
}
Hata yönetimi: try/catch
async function calis() {
try {
const veri = await veriGetir();
console.log(veri);
} catch (hata) {
console.error('Bir sorun oldu:', hata);
}
}
Önemli: await yalnızca async ile işaretlenmiş bir fonksiyonun içinde kullanılabilir.