JavaScript Dersleri

JavaScript'te Zamanlayıcı Fonksiyonlar

eminbasbayan

eminbasbayan

3 dk okuma
JavaScript'te Zamanlayıcı Fonksiyonlar
🔍 Büyütmek için tıklayın

Modern web uygulamalarında, zamanlamayla ilgili işlemler oldukça yaygındır. Örneğin, bir mesaj kutusunun birkaç saniye sonra kapanması, bir işlemin düzenli aralıklarla tekrarlanması ya da otomatik olarak kendini durdurması gibi durumlar JavaScript ile oldukça kolay bir şekilde gerçekleştirilebilir. Bu işlemleri gerçekleştirmek için JavaScript bize üç temel zamanlayıcı fonksiyon sunar: setTimeout, setInterval ve clearInterval.

Bu makalede, bu üç fonksiyonun nasıl çalıştığını ve nasıl kullanıldığını adım adım açıklayacağız. Anlatımı sade ve örneklerle destekleyerek özellikle yeni başlayanlar için anlaşılır hale getireceğiz.

1. setTimeout: Belirli Bir Süre Sonra İşlem Yapmak

setTimeout, adından da anlaşılacağı gibi belirli bir süre bekledikten sonra verilen işlemi çalıştırır. Yani, "şu işi şu kadar zaman sonra yap" dememizi sağlar.

Söz Dizimi:

setTimeout(callbackFunction, delayInMilliseconds);
  • callbackFunction: Beklemeden sonra çalışacak olan fonksiyondur.
  • delayInMilliseconds: Beklenecek süre, milisaniye (1000 ms = 1 saniye) cinsindendir.

Örnek:

Bir kullanıcı sayfaya girdiğinde hemen bir karşılama mesajı, ardından 2 saniye sonra bilgilendirme mesajı gösterelim.

console.log("Hoş geldin!"); setTimeout(() => { console.log("Bilgilendirme: Site çerez kullanmaktadır."); }, 2000); console.log("Lütfen gezinmeye devam edin.");

Çıktı:

Hoş geldin! Lütfen gezinmeye devam edin. (Bekleme) Bilgilendirme: Site çerez kullanmaktadır.

Burada dikkat edilmesi gereken şey şudur: setTimeout, yazıldığı yerde hemen çalışmaz. Sadece belirtilen süreyi başlatır. Kodun geri kalanı çalışmaya devam eder.

2. setInterval: Belirli Aralıklarla İşlem Yapmak

setInterval, bir işlemi belirli aralıklarla sürekli olarak tekrarlar. Bu, örneğin her saniyede bir saat güncellemek veya arka planda veri almak gibi işlemler için kullanışlıdır.

Söz Dizimi:

setInterval(callbackFunction, intervalInMilliseconds);
  • callbackFunction: Her aralıkta tekrar çalıştırılacak fonksiyondur.
  • intervalInMilliseconds: Her tekrarın kaç milisaniyede bir gerçekleşeceğini belirtir.

Örnek:

Her 1 saniyede bir ekrana “Zaman geçiyor…” yazdıralım.

setInterval(() => { console.log("Zaman geçiyor..."); }, 1000);

Bu kod çalıştıktan sonra, tarayıcı kapatılana kadar her saniyede bir aynı mesaj yazılır.

3. clearInterval: setInterval’i Durdurmak

setInterval ile başlatılan işlem kendi kendine durmaz. Sürekli tekrar eder. Eğer bu işlemi durdurmak istiyorsak, clearInterval fonksiyonunu kullanmalıyız. Bunu yapabilmek için, setInterval çağrısı bize bir ID (kimlik numarası) döner. Bu ID'yi saklayıp clearInterval ile kullanabiliriz.

Söz Dizimi:

const id = setInterval(callbackFunction, intervalInMilliseconds); clearInterval(id);

Örnek:

Bir işlemi her saniye tekrarlayıp, 5 saniye sonra durduralım.

const tekrarID = setInterval(() => { console.log("Veri yenileniyor..."); }, 1000); setTimeout(() => { clearInterval(tekrarID); console.log("Yenileme durduruldu."); }, 5000);

Çıktı:

Veri yenileniyor... // 1. saniye Veri yenileniyor... // 2. saniye Veri yenileniyor... // 3. saniye Veri yenileniyor... // 4. saniye Veri yenileniyor... // 5. saniye Yenileme durduruldu. // ve tekrar durur

Bu örnekte, setInterval ile başlatılan tekrar işlemi, setTimeout sayesinde 5 saniye sonra durdurulmuş olur.

Kullanım Senaryoları

  • Bildirimler: Belirli bir süre sonra kaybolması gereken uyarılar.
  • Canlı Saat: Her saniye güncellenen saat göstergesi.
  • Oyunlar: Oyunda belirli aralıklarla skor artırma veya olay tetikleme.
  • Veri Yenileme: Arka planda belli aralıklarla veri çekmek.

Dikkat Edilmesi Gerekenler

  • setTimeout ve setInterval JavaScript'in asenkron çalışma yapısına örnektir. Yani kod yazıldığı sıraya göre değil, belirtilen süreye göre çalışır.
  • setInterval ile yapılan işlem çok sık olursa (örneğin 10 ms gibi), tarayıcı performansını düşürebilir.
  • clearInterval kullanılmazsa işlemler sonsuza kadar devam eder ve bu istenmeyen sonuçlar doğurabilir.

Sonuç

setTimeout, setInterval ve clearInterval, JavaScript’in zamanla ilgili kontrol mekanizmalarıdır. Bu fonksiyonlar, bir uygulamada zamanlamayla ilgili senaryoları çözmek için oldukça faydalıdır. Basit bir mesajı geciktirmekten, arka planda tekrar eden işlemleri yönetmeye kadar birçok yerde karşımıza çıkarlar.

Yeni başlayan bir geliştirici olarak bu üç fonksiyonu öğrenmek, JavaScript’in çalışma yapısını daha iyi anlamanızı sağlar ve web projelerinizde daha etkili çözümler üretmenizin önünü açar.

Etiketler

#Eğitimler#JavaScript Dersleri

İlgili Yazılar

Bu konuyla ilgili diğer yazılarımızı da inceleyebilirsiniz

Web Geliştirmede Neden JavaScript'e İhtiyacımız Var?
JavaScript Dersleri

Web Geliştirmede Neden JavaScript'e İhtiyacımız Var?

Web geliştirme, temel olarak üç ana yapı taşı üzerine kuruludur: **HTML, CSS ve JavaScript**. Bu üçlüden **HTML**, sayfanın iskeletini oluşturur, **CSS**, tasarımı ve görsel düzenlemeleri yapar

2 dk
JavaScript'e Giriş: JavaScript Nedir?
JavaScript Dersleri

JavaScript'e Giriş: JavaScript Nedir?

Web geliştirme yolculuğunuzda büyük bir adım atıyorsunuz! HTML ve CSS ile statik web sayfaları oluşturmayı öğrendiniz, ancak şimdi JavaScript ile sayfanıza hareket ve etkileşim katmanını eklemeye hazırsınız. JavaScript, web sayfalarını dinamik hale getiren ve kullanıcı etkileşimlerini yöneten

3 dk
JavaScript Değişkenler (Variables) Nedir?
JavaScript Dersleri

JavaScript Değişkenler (Variables) Nedir?

JavaScript, web geliştirme dünyasının en önemli dillerinden biridir. Dinamik web siteleri, interaktif uygulamalar, oyunlar ve animasyonlar gibi birçok alanda kullanılır. Ancak, bu tür gelişmiş uygulamalar oluşturabilmek için önce JavaScript'in temellerini anlamak gerekir. Bu

4 dk
JavaScript İlkel (Primitive) Veri Tipleri
JavaScript Dersleri

JavaScript İlkel (Primitive) Veri Tipleri

JavaScript, modern web geliştirmede vazgeçilmez bir programlama dilidir. Web sitelerini daha dinamik hale getirmek, etkileşim eklemek ve hatta oyunlar ve uygulamalar geliştirmek için kullanılır. Ancak, bu eğlenceli ve güçlü özelliklere ulaşmadan önce, JavaScript'in temellerin

4 dk
JavaScript'te Sayılar ve Matematiksel Operatörler
JavaScript Dersleri

JavaScript'te Sayılar ve Matematiksel Operatörler

JavaScript, modern web geliştirmede en yaygın kullanılan programlama dillerinden biridir. Bu dilde çalışırken sayılarla sıkça işlem yaparız. İster bir hesap makinesi uygulaması geliştiriyor olun, ister bir oyundaki puan sistemini kodluyor olun, sayılar kaçınılmaz bir parçadır. JavaScri

4 dk
JavaScript'te Boolean Veri Tipi
JavaScript Dersleri

JavaScript'te Boolean Veri Tipi

JavaScript'ı öğrenmeye yeni başlayanlar için veri tipleri oldukça önemlidir. Bu yazıda, en temel veri tiplerinden biri olan **Boolean (mantıksal) değerleri** inceleyeceğiz. Boolean değerleri, programlamada sıklıkla kullanılan ve kodlarımızın man

3 dk