CodeBlanks Logo Icon CodeBlanks

clearInterval ile durdurma

JavaScript kursu · Orta seviye · Ders 62/134

Bir zamanlayıcıyı clearInterval ve clearTimeout ile durdurmayı öğrenirsin.

Zamanlayıcıyı kimlikle durdurmak

setInterval ve setTimeout bir kimlik (id) döndürür. Bu kimliği bir değişkende saklar ve clearInterval(id) ya da clearTimeout(id) ile zamanlayıcıyı durdurursun.

const id = setInterval(() => {
  console.log('Tik');
}, 1000);
clearInterval(id);

Burada id değişkeni setInterval'in döndürdüğü kimliğidir. clearInterval(id) çağrılınca tekrarlı zamanlayıcı hemen durur. Aynı şekilde clearTimeout(id) henüz çalışmamış bir setTimeout'u iptal eder.

Koşula bağlı durdurma

Bir zamanlayıcıyı belli bir koşulda durdurmak için callback içine bir if yazarsın. Koşul sağlanınca clearInterval çağrılır ve tekrar biter.

let count = 0;
const id = setInterval(() => {
  count = count + 1;
  if (count >= 3) {
    clearInterval(id);
  }
}, 1000);

Bu kod count 3'e ulaşınca zamanlayıcıyı durdurur. id değişkeni callback içinden erişilebilirdir çünkü aynı kapsamda tanımlanmıştır. Böylece sayaç sonsuza dek değil, istediğin yerde durur.

Uygulama Sayaç 3'ü geçince durdur

Aşağıdaki setInterval'i tamamla: count 3'ten büyük olunca clearInterval(id) ile durdur.

Örnek çözümü göster
const counter = document.querySelector('#counter');
let count = 0;
const id = setInterval(() => {
  count = count + 1;
  counter.textContent = count;
  if (count > 3) {
    clearInterval(id);
  }
}, 1000);

Kendini test et

  1. Hangisi setInterval'i durdurur?

    const id = setInterval(() => {
      console.log('Tik');
    }, 1000);
    • stopInterval(id)
    • pauseTimer(id)
    • clearInterval(id)
    • endInterval(id)
    Cevabı göster

    clearInterval(id) — Doğru! clearInterval(id) tekrarlı zamanlayıcıyı durdurur.

  2. clearInterval çağrısını tamamla

    const id = setInterval(() => {
      console.log('Tik');
    }, 1000);
    ____(id);
    Cevabı göster
    const id = setInterval(() => {
      console.log('Tik');
    }, 1000);
    clearInterval(id);
  3. Fonksiyonları amaçlarıyla eşleştir

    setInterval
    tekrarlı zamanlayıcı başlatır
    clearInterval
    tekrarlı zamanlayıcıyı durdurur
    setTimeout
    tek seferlik zamanlayıcı başlatır
    clearTimeout
    çalışmamış zamanlayıcıyı iptal eder

Orta seviye bölümündeki tüm dersler