JavaScript’de while Döngüsü

JavaScript’de while Döngüsü

“Bilmiyoruz kaç kere dönecek… ama dönecek.” 🔁😎

JavaScript öğrenirken bazı yapılar vardır:

  • İlk bakışta basit durur
  • Sonra bir yerde tarayıcıyı kilitler
  • Ve sana hayat dersi verir

İşte while döngüsü tam olarak budur.


while Döngüsü Mantığı: Kafada Oturtalım 🧠

while döngüsü şunu der:

“Koşul true olduğu sürece…
ben buradayım.
Koşul false olursa…
ben yokum.”

Genel Yapı

while (koşul) {
  // tekrar tekrar çalışacak kod
}

📌 Önemli detay:

  • Koşul önce kontrol edilir
  • Sonra içerisi çalışır
  • Koşul tekrar kontrol edilir
  • Bu böyle gider…

En Basit Örnek (Ama En Öğretici Olan) 🔢

let sayac = 1;

while (sayac <= 5) {
  console.log("Sayaç:", sayac);
  sayac++;
}

Kodun Adım Adım Hikâyesi 📖

1️⃣ sayac = 1

“Ben başlıyorum.”

2️⃣ sayac <= 5

“Koşul doğru mu?” → EVET

3️⃣ console.log

“Ekrana yaz.”

4️⃣ sayac++

“Bir ilerle.”

5️⃣ Döngü başa sar 🔄

🧠 Hayati nokta:

sayac++ olmazsa… geçmiş olsun 😅


Sonsuz Döngü (Tarayıcıyı Donma Noktasına Getiren Hata) 🧊💥

Şimdi gel, JavaScript dünyasının kara deliğine bakalım.

let sayac = 1;

while (sayac &lt;= 5) {
  console.log("Merhaba");
}

Burada Ne Yanlış?

  • sayac hiç değişmiyor
  • Koşul hep true
  • Döngü asla bitmiyor

🧨 Sonuç:

  • CPU %100
  • Fan sesi uçak motoru ✈️
  • “Niye böyle oldu?” sorusu

📌 Kural:

while döngüsünde koşulu mutlaka değiştiren bir şey olmalı


while Ne Zaman Kullanılır? 🎯

for mu while mı?

SenaryoEn Mantıklı Döngü
Kaç kez döneceği bellifor
Belli değilwhile
Kullanıcıdan input bekleniyorwhile
Bir şart gerçekleşene kadarwhile

🧠 Özetle:

Belirsizlik varsa, while vardır.


Gerçek Hayat Senaryosu: Kullanıcıdan Sayı Alma 🎮

let sayi = null;

while (sayi === null || isNaN(sayi)) {
  sayi = Number(prompt("Lütfen bir sayı giriniz"));
}

console.log("Girilen sayı:", sayi);

Burada Ne Oluyor?

  • Kullanıcı saçma bir şey yazarsa ❌
  • İptale basarsa ❌
  • Harf girerse ❌

➡️ Döngü devam eder
➡️ Doğru input gelince çıkar 🎉

📌 Pratik ipucu:

Form, prompt, input = while döngüsünün doğal yaşam alanı 🏕️


break: “Tamam yeter” Demenin Kod Karşılığı 🛑

let i = 1;

while (i &lt;= 10) {
  if (i === 5) {
    break;
  }
  console.log(i);
  i++;
}

Ne Yaptık?

  • Döngü 1’den başladı
  • 5’e gelince acil çıkış
  • Geri kalanı umursamadı

📌 break:

Döngüyü tamamen bitirir


continue: “Bunu Atla, Devam Et” ⏭️

let i = 0;

while (i &lt; 5) {
  i++;

  if (i === 3) {
    continue;
  }

  console.log(i);
}

Çıktı:

1
2
4
5

📌 continue:

  • Döngüyü bitirmez
  • Sadece o turu pas geçer

while(true) Korkulacak Bir Şey mi? 😱

Hayır…
Doğru kullanılırsa harikadır.

while (true) {
  let cevap = prompt("Çıkmak için q yaz");

  if (cevap === "q") {
    break;
  }
}

🧠 Mantık:

  • Sonsuz döngü başlat
  • break ile kontrolü ele al

📌 Profesyoneller bunu çok kullanır
📌 Ama break yoksa FELAKET 😅


do...while: Önce Çalış, Sonra Kontrol Et 🔄

let sifre;

do {
  sifre = prompt("Şifre gir");
} while (sifre !== "1234");

alert("Hoş geldin 😎");

Farkı Ne?

  • Kod en az 1 kere çalışır
  • Koşul sonra kontrol edilir

📌 Şifre, popup, kullanıcı etkileşimi = do...while


Mini Proje: Sayı Tahmin Oyunu 🎯🎲

let tahmin;
let tutulan = 7;

while (tahmin !== tutulan) {
  tahmin = Number(prompt("Tahmin et"));

  if (tahmin > tutulan) {
    alert("Biraz düş");
  } else if (tahmin &lt; tutulan) {
    alert("Biraz çık");
  }
}

alert("Bildin! 🎉");

Bu Örnek Neyi Öğretiyor?

✔️ while gerçek hayatta nasıl kullanılır
✔️ koşul nasıl güncellenir
✔️ kullanıcı etkileşimi
✔️ break olmadan doğal bitiş


En Sık Yapılan Hatalar ❌ (Ve Nasıl Kaçınılır)

❌ Sayaç artırmayı unutmak
✔️ Her döngüde: “Bu koşul nasıl false olacak?” diye sor

❌ Yanlış karşılaştırma
✔️ === kullan, tahmin yapma

while(true) + break koymamak
✔️ Çıkış kapısını önceden planla


Profesyonel İpuçları 🧠🔥

💡 while, event loop ve async yapılarla çok güçlüdür
💡 Validation, retry mekanizması, polling işlemleri için birebir
💡 Okunabilirlik için:

while (isValid === false) { ... }

gibi net koşullar kullan


Kısa Özet (Ama Beyne Kazınan) 🧠✨

  • whilekoşul doğruysa çalışır
  • Döngüyü bitirecek bir yol şart
  • Belirsizlik varsa en doğru seçim
  • break & continue kontrolü senin eline verir
  • Yanlış kullanılırsa… tarayıcıyı ağlatır 😅

Comments

No comments yet. Why don’t you start the discussion?

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir