
İçindekiler
Yazılım geliştirmenin temel taşlarından biri, programın farklı durumlara göre farklı davranışlar sergilemesini sağlamaktır. Bu tür mantıksal kararların verildiği yapılar “koşul yapıları” olarak adlandırılır. JavaScript programlama dilinde bu yapıların en temel ve en sık kullanılanı if / else
yapısıdır. Koşul yapıları, yazdığınız kodun daha esnek, kullanıcıya ve duruma göre değişken bir şekilde çalışmasını sağlar. Bu yazıda, JavaScript’te if / else
yapısını tüm ayrıntılarıyla inceleyecek; temel kullanımından ileri düzey örneklere, sık yapılan hatalardan püf noktalarına kadar birçok önemli konuyu ele alacağız.
Koşul Nedir?
Koşul, bir durumun doğru (true) ya da yanlış (false) olmasına göre programın izlediği yolu belirleyen yapıdır. Koşullar, yazılımın karar mekanizmasıdır. Eğer bir durum sağlanıyorsa belirli işlemler yapılır, sağlanmıyorsa başka işlemler gerçekleştirilir. JavaScript’te bu yapı if
, else if
ve else
anahtar kelimeleriyle inşa edilir.
if
Yapısının Temel Kullanımı
if
, İngilizce’de “eğer” anlamına gelir ve bir koşulun doğruluğunu kontrol eder. Koşul doğruysa (true) {}
süslü parantezleri içindeki kod bloğu çalıştırılır. Basit bir örnekle başlayalım:
let yas = 18;
if (yas >= 18) {
console.log("Reşitsiniz.");
}
Burada kullanıcı 18 yaşında ya da daha büyükse “Reşitsiniz.” mesajı konsola yazdırılır. Aksi halde hiçbir şey yazdırılmaz.
else
Yapısının Kullanımı
else
, if
koşulu sağlanmadığında çalışacak alternatif bir kod bloğu sunar. if
bloğunun hemen arkasına yazılır.
let yas = 16;
if (yas >= 18) {
console.log("Reşitsiniz.");
} else {
console.log("Reşit değilsiniz.");
}
Yaş değeri 18’in altında olduğunda, “Reşit değilsiniz.” çıktısı verilir.
else if
ile Çoklu Koşullar
Bazen tek bir if
ve else
bloğu yeterli olmaz. Daha fazla koşulu kontrol etmek için else if
kullanılır.
let not = 75;
if (not >= 90) {
console.log("Notunuz: AA");
} else if (not >= 80) {
console.log("Notunuz: BA");
} else if (not >= 70) {
console.log("Notunuz: BB");
} else {
console.log("Notunuz düşük.");
}
Bu şekilde çok sayıda olasılığı kontrol edebilir ve her duruma özel sonuçlar üretebilirsiniz.
Karşılaştırma Operatörleri
Koşul ifadelerinde sıklıkla kullanılan karşılaştırma operatörleri şunlardır:
==
: Eşitse (tür kontrolü yapmaz)===
: Hem değer hem de tür eşitse!=
: Eşit değilse!==
: Değer ya da tür farklıysa>
: Büyüktür<
: Küçüktür>=
: Büyük eşittir<=
: Küçük eşittir
let x = 5;
let y = "5";
console.log(x == y); // true
console.log(x === y); // false
Mantıksal Operatörlerle Birden Fazla Koşul
&&
(ve): Tüm koşullar doğruysa çalışır||
(veya): En az bir koşul doğruysa çalışır!
(değil): Koşulun tersini alır
let yas = 20;
let ehliyet = true;
if (yas >= 18 && ehliyet) {
console.log("Araç kullanabilirsiniz.");
}
Bu örnekte her iki koşul sağlanıyorsa çıktı verilir. Biri bile yanlışsa kod çalışmaz.
İç İçe Koşullar (Nested If)
Bazı durumlarda bir koşulun içinde başka bir koşul kontrol edilmesi gerekebilir. Bu duruma iç içe if
yapısı (nested if) denir:
let kullanici = "admin";
let sifre = "1234";
if (kullanici === "admin") {
if (sifre === "1234") {
console.log("Giriş başarılı");
} else {
console.log("Şifre yanlış");
}
} else {
console.log("Kullanıcı adı yanlış");
}
İç içe yapılar karışık gibi görünse de, mantığı doğru kurduğunuzda oldukça güçlüdür.
Gerçek Hayattan Örnekler
Örnek 1: Hava Durumuna Göre Giyim Tavsiyesi
let hava = "yağmurlu";
if (hava === "güneşli") {
console.log("Güneş gözlüğü takın.");
} else if (hava === "yağmurlu") {
console.log("Şemsiyenizi almayı unutmayın.");
} else if (hava === "karlı") {
console.log("Kalın giyinin.");
} else {
console.log("Hava durumuna göre önlem alın.");
}
Örnek 2: Alışveriş Sepeti İndirimi
let toplamTutar = 120;
if (toplamTutar >= 150) {
console.log("%20 indirim kazandınız!");
} else if (toplamTutar >= 100) {
console.log("%10 indirim kazandınız!");
} else {
console.log("İndirim kazanmak için 100 TL ve üzeri alışveriş yapmalısınız.");
}
Örnek 3: Kullanıcı Giriş Doğrulama
let girilenKullanici = "admin";
let girilenSifre = "abcd";
let dogruKullanici = "admin";
let dogruSifre = "abcd";
if (girilenKullanici === dogruKullanici && girilenSifre === dogruSifre) {
console.log("Giriş başarılı!");
} else {
console.log("Kullanıcı adı veya şifre yanlış!");
}
Örnek 4: Yaş ve Ehliyet Kontrolü
let yas = 22;
let ehliyetVar = false;
if (yas >= 18) {
if (ehliyetVar) {
console.log("Araç kullanabilirsiniz.");
} else {
console.log("Ehliyetiniz yok, araç kullanamazsınız.");
}
} else {
console.log("Reşit değilsiniz, araç kullanamazsınız.");
}
Sık Yapılan Hatalar
=
yerine==
kullanmak:=
atama operatörüdür, karşılaştırma yapmaz.- Parantezleri unutmak: Koşul ve kod bloğu doğru biçimde yazılmalıdır.
else
bloğunun gereksiz kullanımı ya da mantıksal hatalar.
Yanlış:
if (sayi > 0) {
console.log("Pozitif sayı");
} else if (sayi > 0) {
console.log("Pozitif sayı");
}
Doğru:
if (sayi > 0) {
console.log("Pozitif sayı");
} else if (sayi < 0) {
console.log("Negatif sayı");
} else {
console.log("Sayı sıfır");
}
Ternary Operatör: Kısa ve Pratik
Basit if / else
yapıları için daha sade bir yazım olan ternary (üçlü) operatör kullanılabilir:
let yas = 20;
let mesaj = (yas >= 18) ? "Reşitsiniz" : "Reşit değilsiniz";
console.log(mesaj);
Ternary operatör sayesinde özellikle UI tarafında (örneğin HTML içinde) kısa kontroller yapmak oldukça pratiktir.
Neden if / else
Yapısı Öğrenilmeli?
JavaScript’te if / else
yapısı sadece basit karşılaştırmalar için değil, aynı zamanda kullanıcı arayüzü kontrolü, form doğrulama, API yanıt kontrolü, oyun mantığı gibi birçok farklı alanda kullanılabilir.
Bir web uygulamasında kullanıcı doğru şifre girmiş mi, form alanları boş mu, alışveriş sepeti dolu mu, oturum süresi dolmuş mu gibi sayısız durum için if / else
yapısı hayat kurtarıcıdır.
Sonuç
JavaScript’te koşul yapıları programın akışını kontrol etmenin en önemli yollarından biridir. JavaScript if / else
yapısı sayesinde kodlarımız daha esnek, daha akıllı ve kullanıcı dostu hale gelir. Bu yazıda temel kullanım örneklerinden gelişmiş yapılara, sık yapılan hatalardan önerilere kadar geniş bir bakış sunduk.
Kod yazarken koşulların açık ve anlaşılır olması, yazılımın bakımını ve geliştirmesini kolaylaştırır. JavaScript if / else
sadece başlangıç değil, profesyonel projelerde de sürekli kullanılan temel yapılardan biridir.
Unutmayın: Bir geliştirici için koşullar sadece kod değil, aynı zamanda karar verebilme yeteneğidir. Bu yeteneğinizi geliştirdikçe daha etkili uygulamalar geliştirebilirsiniz. Daha fazlası için “Javascript” kategorisine bakabilirsin.
-
JavaScript if / else nedir?
JavaScript’te
if / else
, bir koşulun doğru veya yanlış olmasına göre farklı kod bloklarının çalışmasını sağlayan bir kontrol yapısıdır.if
koşulu doğruysa belirli kod çalışır, değilseelse
bloğu devreye girer. -
else if
ne işe yarar?else if
, birden fazla durumu kontrol etmek için kullanılır. İlkif
koşulu sağlanmazsa, sıradakielse if
koşulu kontrol edilir. Bu şekilde çoklu durumlara göre karar verebiliriz. -
if
veelse
yapısı hangi durumlarda kullanılır?Kullanıcının yaşına göre reşitlik kontrolü, sınav notuna göre harf notu belirleme, alışveriş tutarına göre indirim uygulama gibi birçok durumda
if / else
yapısı kullanılabilir. Yani, bir karar verilmesi gereken her senaryoda kullanılabilir. -
==
ve===
farkı nedir?==
sadece değerleri karşılaştırır (tür farkını dikkate almaz).===
hem değer hem de veri türünü karşılaştırır. -
Ternary operatör ne işe yarar?
Ternary operatör (
? :
), basitif / else
durumlarını tek satırda yazmamızı sağlar.let mesaj = (yas >= 18) ? "Reşitsiniz" : "Reşit değilsiniz";
Daha kısa ve okunabilir bir yapı sunar. -
if
bloğu içinde tekrarif
kullanabilir miyiz?Evet, buna iç içe if yapısı (nested if) denir. Bir koşulun içinde başka bir koşulu kontrol etmemizi sağlar.
-
if / else
yapısı olmadan JavaScript çalışır mı?Elbette çalışır. Ancak uygulamaların kullanıcı girdilerine veya duruma göre farklı tepki vermesi için
if / else
gibi kontrol yapılarına ihtiyaç duyulur. Bu yapılar olmadan etkileşimli uygulamalar oluşturmak çok zorlaşır. -
if / else
yapısını fonksiyonlarla birlikte nasıl kullanabiliriz?Koşul kontrolleri genellikle fonksiyonlar içinde kullanılır. Örneğin:
function yasKontrol(yas) { if (yas >= 18) { return "Reşitsiniz"; } else { return "Reşit değilsiniz"; } }
-
JavaScript’te en çok yapılan
if / else
hataları nelerdir?=
yerine==
kullanmak (atama hatası)
Koşul parantezini unutmak
Gereksiz yereelse
bloğu kullanmak
Karmaşık koşulları tek satıra sığdırmaya çalışmak -
switch
mi yoksaif / else
mi tercih edilmeli?Çok sayıda sabit değere göre işlem yapılıyorsa
switch
tercih edilebilir. Ancak koşullar karmaşık hale gelirseif / else
daha esnektir.
Kaynak patika.dev
Henüz yorum yapılmamış. İlk yorumu siz yapabilirsiniz!