JavaScript programlamada koşul ifadeleri (conditional statements), programın farklı durumlara göre farklı yollar izlemesini sağlar. Gerçek hayatta nasıl ki karar verirken “Eğer hava güzelse dışarı çıkarım, değilse evde kalırım” diyorsak; programlama dünyasında da benzer şekilde şartları kontrol etmek için koşul yapıları kullanırız.
JavaScript’te koşul ifadeleri sayesinde programlarımız akıllı hale gelir, farklı koşullara esnek şekilde yanıt verebilir. Bu yazıda if-else ve switch yapılarını kapsamlı şekilde ele alacağız.
if-else Koşul Yapısı
if-else
, JavaScript’in en temel ve en çok kullanılan koşul yapısıdır. Belirli bir şartın doğru olup olmadığını kontrol eder ve bu sonuca göre farklı kodları çalıştırır.
Temel Sözdizimi:
if (koşul) {
// koşul doğruysa bu kod çalışır
} else {
// koşul yanlışsa bu kod çalışır
}
Basit Örnek:
let yas = 18;
if (yas >= 18) {
console.log("Reşitsiniz.");
} else {
console.log("Reşit değilsiniz.");
}
else if ile Birden Fazla Şart Kontrolü
Birden fazla koşul kontrol etmek için else if
blokları kullanılır:
let not = 75;
if (not >= 90) {
console.log("Pekiyi");
} else if (not >= 70) {
console.log("İyi");
} else if (not >= 50) {
console.log("Orta");
} else {
console.log("Başarısız");
}
Bu yapıda, koşullar yukarıdan aşağıya sırayla kontrol edilir. İlk doğru olan koşulda durur ve altındaki bloklar çalışmaz.
İç İçe (Nested) if Kullanımı
Bazı durumlarda bir koşulun içinde başka koşullar kontrol edilmek istenebilir:
let hava = "güneşli";
let sicaklik = 30;
if (hava == "güneşli") {
if (sicaklik > 25) {
console.log("Denize gidebilirsiniz.");
} else {
console.log("Dışarı çıkabilirsiniz ama biraz serin.");
}
}
switch Koşul Yapısı
switch
ifadesi, bir değişkenin farklı sabit değerlere sahip olmasına göre seçim yapmak için kullanılır. Özellikle çok sayıda else if
bloğu yerine daha temiz ve okunabilir bir yapı sağlar.
switch Sözdizimi:
switch (değişken) {
case değer1:
// değer1 eşleşirse çalışacak kod
break;
case değer2:
// değer2 eşleşirse çalışacak kod
break;
default:
// hiçbir değer eşleşmezse çalışacak kod
}
switch Örneği:
let gun = 5;
switch (gun) {
case 1:
console.log("Pazartesi");
break;
case 2:
console.log("Salı");
break;
case 3:
console.log("Çarşamba");
break;
case 4:
console.log("Perşembe");
break;
case 5:
console.log("Cuma");
break;
default:
console.log("Hafta sonu");
}
Burada, gun
değişkeni 5 olduğu için “Cuma” yazısı konsola yazdırılacaktır. break
komutu, eşleşme bulunduğunda diğer case bloklarının çalışmasını engeller.
switch İçin Bir İpucu:
switch
sadece sabit değerleri kontrol eder. Karmaşık koşullarda if-else
kullanmak daha uygundur.
if-else ile switch Arasındaki Temel Farklar
Özellik | if-else | switch |
---|---|---|
Esneklik | Karmaşık koşullar için uygun | Sabit değerler için ideal |
Performans | Karmaşıklık artarsa zorlaşabilir | Okunabilirliği artırır |
Tip Dönüşümü | Mümkün | Genelde birebir karşılaştırma |
Okunabilirlik | Küçük kontrol yapılarında iyi | Çoklu seçeneklerde daha iyi |
Koşul İfadelerinde Yaygın Hatalar
==
yerine===
kullanmak daha güvenlidir (tip kontrolü yapar).else if
sıralamasını dikkatli yapmak gerekir; sıralama yanlışsa beklenmedik sonuç alabilirsiniz.switch
içindebreak
koymayı unutmamak gerekir; aksi takdirde tüm diğer case’ler de çalışır (bu duruma fall-through denir).
Gerçek Hayattan Mini Uygulama
Basit bir kullanıcı girişi simülasyonu yapalım:
let kullaniciAdi = "furkan";
let sifre = "1234";
if (kullaniciAdi == "furkan" && sifre == "1234") {
console.log("Giriş başarılı.");
} else {
console.log("Kullanıcı adı veya şifre yanlış.");
}
Bu tür uygulamalarla koşul ifadeleri daha iyi pekişir.
Sonuç
JavaScript’te koşul ifadeleri, programların karar verme mekanizmasıdır. if-else yapısı esnekliğiyle her türlü koşulda kullanılabilirken, switch ifadesi belirli değer karşılaştırmalarında kodun okunabilirliğini artırır. Programlamada koşulları iyi anlamak, daha temiz, anlaşılır ve hatasız kod yazmanın temelidir.