🎛️ JavaScript Switch Statement

JavaScript Rehberi

If–Else Kalabalığından Kurtulmanın Eğlenceli ve Profesyonel Yolu

Bir noktada her JavaScript geliştiricisinin başına gelir:

if (x === 1) {
} else if (x === 2) {
} else if (x === 3) {
} else if (x === 4) {
} else {
}

Bu kodu yazarken iç sesin şunu der:

“Ben yazılımcıyım… neden bu kadar acı çekiyorum?” 😩

İşte switch statement tam bu noktada devreye girer ve der ki:

“Sakin ol… ben varım.” 😌


🤔 Switch Statement Nedir? (Gerçek Hayat Versiyonu)

Switch’i bir otomatik santral gibi düşün 📞

  • Sen bir değer verirsin
  • Switch o değeri alır
  • “Bu hangi kapıya ait?” diye bakar
  • Doğru kapıyı açar

💡 Yani:

  • Tek bir değişken
  • Birden fazla olası senaryo
  • Net sonuçlar

varsa → switch cuk oturur 👌


🧱 Switch Yapısının Temel Anatomisi (Kaslı Versiyon 💪)

switch (kontrolEdilecekDeger) {
  case olasiDurum1:
    // yapılacaklar
    break;

  case olasiDurum2:
    // yapılacaklar
    break;

  default:
    // hiçbir şeye uymuyorsa
}

🧠 Parça Parça Açalım

ParçaNe İşe Yarar?
switchKontrol merkezidir
case“Eğer buysa” demenin switch’li hali
break“Tamam buradayız, dur!”
defaultSon çare, B planı

📅 Örnek 1: Günlere Göre Ruh Hali Analizi (Bilimsel Değil Ama Gerçek 😄)

let gun = "Pazartesi";

switch (gun) {
  case "Pazartesi":
    console.log("Kahve yetmedi ☕😵");
    break;

  case "Salı":
    console.log("Hâlâ ayılamadım...");
    break;

  case "Cuma":
    console.log("Çıkışa 3 saat kaldı 🎉");
    break;

  case "Cumartesi":
  case "Pazar":
    console.log("Hayat güzel 😌");
    break;

  default:
    console.log("Bu hangi gün? 🤔");
}

🔍 Burada Neler Oluyor?

  • Cumartesi ve Pazar aynı sonucu veriyor
  • Araya break koymadık çünkü bilerek devam etsin istedik
  • Kod okunabilir, net, temiz

🧠 İpucu:
Aynı çıktıyı veren durumları alt alta yazmak, switch’in gizli süper gücüdür 🦸‍♂️


⚠️ Break Yazmazsak Ne Olur? (Switch’in Karanlık Tarafı 😈)

let seviye = 1;

switch (seviye) {
  case 1:
    console.log("Çaylak");
  case 2:
    console.log("Deneyimli");
  case 3:
    console.log("Usta");
}

📢 Çıktı:

Çaylak
Deneyimli
Usta

😱 Neden?

  • JavaScript break görmedi
  • “Madem başladık, devam edelim” dedi

🧠 Ders:

break yoksa switch durmaz, yuvarlanır gider.

🎯 Profesyonel refleks:
Her case yazdığında otomatik olarak break ekle.
Sonra bilinçli olarak sil 😉


🧮 Örnek 2: Switch ile Mini Hesap Makinesi

let islem = "*";
let a = 6;
let b = 7;

switch (islem) {
  case "+":
    console.log("Toplam:", a + b);
    break;

  case "-":
    console.log("Fark:", a - b);
    break;

  case "*":
    console.log("Çarpım:", a * b);
    break;

  case "/":
    console.log("Bölüm:", a / b);
    break;

  default:
    console.log("Bilinmeyen işlem ❌");
}

🧠 Ne Öğrendik?

  • Menü sistemleri
  • Oyun içi seçimler
  • Hesap makineleri
  • Ayar panelleri

👉 Switch’in doğal habitatı 🏞️


🎮 Örnek 3: Oyun Karakteri Seçimi (Level Up!)

let karakter = "mage";

switch (karakter) {
  case "warrior":
    console.log("Kılıç + güç 💪");
    break;

  case "mage":
    console.log("Büyü + zeka 🧙‍♂️");
    break;

  case "archer":
    console.log("Ok + çeviklik 🏹");
    break;

  default:
    console.log("Bilinmeyen karakter");
}

📌 Gerçek hayatta nerede?

  • Oyunlar
  • Rol seçimleri
  • Yetkilendirme sistemleri

🆚 Switch mi If–Else mi? (Ringde Kim Var? 🥊)

✅ Switch Kullan:

  • Tek değişken varsa
  • Sabit değerler kontrol ediliyorsa
  • Kod okunabilirliği önemliyse

✅ If–Else Kullan:

  • > < && || gibi karşılaştırmalar varsa
  • Karmaşık mantık gerekiyorsa
  • Dinamik koşullar söz konusuysa

🧠 Altın Kural:

“Switch sadedir, if–else esnektir.”


⚠️ Switch Strict Karşılaştırma Yapar (=== Alarmı 🚨)

switch (10) {
  case "10":
    console.log("String");
    break;

  case 10:
    console.log("Number");
    break;
}

📢 Çıktı:

Number

👉 Çünkü switch:

  • Tür dönüşümü yapmaz
  • === gibi davranır

🧠 İpucu:
Değerin tipinden emin değilsen switch seni üzebilir 😅


🧩 Bonus: Switch’i Daha Akıllı Kullanma Tüyoları

✔️ Case’lerde Fonksiyon Çağırabilirsin

case "login":
  loginUser();
  break;

✔️ Default’u Asla Atlamaz

Default = hata yakalama noktası 🎯

❌ Case’lerde Karmaşık Mantık Yapma

Switch sade kalmalı, drama sevmez 😄


🎯 Final: Switch’i Artık Tanıyorsun

Artık sen:

  • Switch’in ne olduğunu biliyorsun
  • Nerede parladığını biliyorsun
  • Nerede if–else’e bırakılması gerektiğini biliyorsun

🎉 Seviye atladın!

Bir yanıt yazın

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