setTimeout
Belirli bir süre sonra bir kez çalışan kodu setTimeout ile yazmayı öğrenirsin.
setTimeout ile gecikmeli çağrı
setTimeout bir fonksiyonu belirli bir gecikmeden sonra bir kez çalıştırır. Gecikme milisaniye cinsindendir: 1000 ms = 1 saniye. Callback genelde ok fonksiyonu olarak yazılır.
setTimeout(() => {
console.log('Merhaba');
}, 1000);Bu kod 1 saniye sonra Merhaba yazdırır. Callback yalnızca bir kez çağrılır. Zamanlayıcı beklerken sayfa donmaz; diğer kodlar hemen çalışmaya devam eder.
setTimeout'a ek argüman vermek
setTimeout'a callback'den sonra ek parametreler verebilirsin. Bu parametreler callback çağrılırken argüman olarak geçirilir.
function greet(name) {
console.log('Merhaba ' + name);
}
setTimeout(greet, 1000, 'Ayşe');Bu kod 1 saniye sonra Merhaba Ayşe yazdırır. Üçüncü parametre 'Ayşe', callback'e name argümanı olarak verilir. Birden fazla argüman da virgülle ekleyebilirsin.
Uygulama 1 saniye sonra buton metnini değiştir
Bir buton seç ve setTimeout ile 1 saniye sonra metnini 'Hazır' yap. button.textContent'i kullan.
Örnek çözümü göster
const button = document.querySelector('button');
setTimeout(() => {
button.textContent = 'Hazır';
}, 1000);
Kendini test et
-
Aşağıdaki koddaki gecikme ne kadardır?
setTimeout(() => { console.log('Merhaba'); }, 2500);- 2.5 saat
- 2500 milisaniye
- 2500 saniye
- 2500 dakika
Cevabı göster
2500 milisaniye — Doğru! 2500 sayısı milisaniye cinsindendir, yani 2.5 saniye.
-
setTimeout çağrısını tamamla
setTimeout(() => { console.log('Hazır'); }, ____);Cevabı göster
setTimeout(() => { console.log('Hazır'); }, 1000); -
setTimeout parçalarını eşleştir
- setTimeout
- zamanlayıcı başlatır
- callback
- gecikmeden sonra çalışır
- 1000
- 1 saniyeye eşittir
- geri dönüş değeri
- timer kimliğidir