Web Geliştirme: HTML, CSS, JavaScript

JavaScript Döngüleri ve Koşullu İfadeler: JavaScript Dersleri

JavaScript, web sitelerini interaktif hale getiren ve dinamik içerikler oluşturmamızı sağlayan güçlü bir programlama dilidir. Bu dilin temel yapı taşlarından ikisi, program akışını kontrol etmemizi sağlayan döngüler ve koşullu ifadelerdir. Bu yapılar, yazdığımız kodun belirli şartlara göre farklı davranışlar sergilemesini veya belirli işlemleri tekrarlı bir şekilde yapmasını mümkün kılar. Günlük hayatta karar verme süreçlerimiz ve rutin işlerimiz nasıl bir düzen içinde ilerliyorsa, programlama dünyasında da bu işlevselliği döngüler ve koşullu ifadeler aracılığıyla sağlarız. Bu ders, JavaScript’in bu kritik özelliklerini derinlemesine inceleyerek, daha esnek ve güçlü uygulamalar geliştirmenizin kapılarını aralayacaktır.

🎯 Bu Derste Öğrenecekleriniz
  • JavaScript koşullu ifadelerini (if, else if, else, switch) doğru bir şekilde kullanmayı öğreneceksiniz.
  • JavaScript döngülerini (for, while, do...while, for...in, for...of) kullanarak tekrarlı görevleri otomatikleştirebileceksiniz.
  • break ve continue anahtar kelimeleri ile döngü akışını kontrol etme becerisi kazanacaksınız.
  • Gerçek dünya senaryolarında koşullu ifadeler ve döngülerin neden önemli olduğunu ve nasıl uygulandığını anlayacaksınız.
  • Daha karmaşık algoritma yapıları oluşturmak için temel programlama mantığınızı geliştireceksiniz.
📌 Bu Konuda Bilmeniz Gerekenler
  • Koşullu İfadeler: Programınızın belirli bir duruma göre farklı yollar izlemesini sağlar. En sık kullanılanlar if, else if, else ve switch‘tir.
  • Döngüler: Belirli bir kod bloğunu tekrar tekrar çalıştırmak için kullanılır. Başlıca döngü türleri for, while, do...while, for...in ve for...of‘tur.
  • break Deyimi: Bir döngüyü veya switch ifadesini anında sonlandırır.
  • continue Deyimi: Bir döngünün mevcut iterasyonunu atlar ve bir sonraki iterasyona geçer.
  • Bu yapılar, dinamik ve etkileşimli web sayfaları oluşturmak için JavaScript’in temelidir.

JavaScript Döngüleri ve Koşullu İfadeler Nedir?

Programlama, bilgisayara belirli görevleri yerine getirmesi için talimatlar vermekten ibarettir. Ancak bu talimatlar her zaman düz bir çizgi halinde ilerlemez. Bazen belirli bir koşulun doğru olup olmadığına bakarak farklı bir yol izlememiz gerekebilir. İşte tam bu noktada koşullu ifadeler devreye girer.

Diğer zamanlarda ise, aynı görevi birden fazla kez tekrarlamamız gerekebilir. Örneğin, bir listedeki tüm öğeleri ekrana yazdırmak veya belirli bir hesaplamayı belirli bir sayıya ulaşana kadar yapmak isteyebiliriz. Bu gibi durumlarda ise döngüler, kod tekrarını önleyerek bize büyük kolaylık sağlar.

Temel Kavramlara Giriş

JavaScript’teki koşullu ifadeler ve döngüler, programlamanın mantıksal temelini oluşturur. Bu kavramları anlamak, daha karmaşık algoritmalar tasarlamanın ve veri üzerinde etkili işlemler yapmanın anahtarıdır. İlgili aramalar arasında genellikle “JavaScript karar mekanizmaları” veya “JavaScript tekrarlayan işlemler” gibi terimler bulunur.

ℹ️ Bilgi: JavaScript, yorumlanan bir dil olduğu için, yazdığınız kod satır satır okunur ve çalıştırılır. Koşullu ifadeler ve döngüler, bu akışı dinamik olarak değiştirerek programınıza “zeka” katmanızı sağlar.

JavaScript Koşullu İfadeler: Karar Vermenin Gücü

Koşullu ifadeler, programınızın belirli bir duruma göre farklı kod bloklarını çalıştırmasına olanak tanır. Bir karar verme mekanizması gibi düşünebilirsiniz: “Eğer bu doğruysa, şunu yap; yoksa başka bir şeyi yap.”

if, else if ve else Yapısı

if ifadesi, JavaScript’teki en temel koşullu yapıdır. Belirtilen bir koşul doğru (true) ise, belirli bir kod bloğu çalıştırılır.

📖 Örnek: Basit if Kullanımı
let yas = 18;

if (yas >= 18) {
  console.log("Ehliyet alabilirsiniz."); // Koşul doğru olduğu için bu satır çalışır.
}

Eğer koşul yanlış (false) ise ve başka bir alternatif sunmak isterseniz, else ifadesini kullanırsınız. Bu durumda if bloğu çalışmaz, else bloğu çalışır.

📖 Örnek: if...else Kullanımı
let havaDurumu = "yağmurlu";

if (havaDurumu === "güneşli") {
  console.log("Dışarı çıkıp piknik yapabiliriz.");
} else {
  console.log("Evde kalıp film izleyelim."); // Koşul yanlış olduğu için bu satır çalışır.
}

Birden fazla koşulu kontrol etmek istediğinizde ise else if yapısı devreye girer. Bu, zincirleme koşul kontrolleri için oldukça kullanışlıdır.

📖 Örnek: if...else if...else Kullanımı
let not = 75;

if (not >= 90) {
  console.log("Notunuz: A");
} else if (not >= 80) {
  console.log("Notunuz: B");
} else if (not >= 70) {
  console.log("Notunuz: C"); // Bu koşul doğru olduğu için bu satır çalışır.
} else {
  console.log("Notunuz: D");
}

switch İfadesi: Çoklu Koşullar İçin Şık Çözüm

Eğer aynı değişkenin farklı olası değerlerine göre farklı işlemler yapmak istiyorsanız ve else if zinciriniz çok uzuyorsa, switch ifadesi daha okunaklı ve düzenli bir alternatif sunar. Kullanıcılar şunu da sordu: “JavaScript’te birden fazla koşulu nasıl kontrol ederim?” sorusuna switch güzel bir cevaptır.

📖 Örnek: switch Kullanımı
let gun = "Salı";

switch (gun) {
  case "Pazartesi":
    console.log("Hafta başı!");
    break;
  case "Salı":
    console.log("İşler hızlanıyor."); // 'gun' değeri 'Salı' ile eşleştiği için bu blok çalışır.
    break;
  case "Cuma":
    console.log("Hafta sonu geliyor!");
    break;
  default:
    console.log("Normal bir gün.");
}
⚠️ Dikkat: switch ifadelerinde her case bloğunun sonuna break; anahtar kelimesini eklemeyi unutmayın. Aksi takdirde, eşleşen case‘den sonraki tüm case blokları (default dahil) break görene kadar çalışmaya devam eder (fall-through davranışı).
💡 İpucu: Basit true/false koşulları için if/else kullanın. Ancak bir değişkenin birden fazla belirli değere sahip olma ihtimalini kontrol ediyorsanız, switch genellikle daha temiz bir kod sağlar.

JavaScript Döngülerine Derinlemesine Bakış: Tekrarlı Görevleri Otomatikleştirmek

Döngüler, programlamada belirli bir kod bloğunu tekrar tekrar çalıştırmak için kullanılan temel yapılardır. Bu, özellikle veri listeleri üzerinde işlem yaparken veya belirli bir koşul karşılanana kadar bir görevi sürdürmeniz gerektiğinde çok faydalıdır.

for Döngüsü: Belirli Sayıda Tekrar İçin İdeal

for döngüsü, belirli sayıda tekrar yapmanız gerektiğinde en sık kullanılan döngü türüdür. Üç ana bileşeni vardır: başlatma, koşul ve artırma/azaltma.

📖 Örnek: for Döngüsü ile Sayma
for (let i = 0; i < 5; i++) {
  console.log("Sayı: " + i); // 0'dan 4'e kadar sayıları yazdırır.
}
// Çıktı:
// Sayı: 0
// Sayı: 1
// Sayı: 2
// Sayı: 3
// Sayı: 4

Bu örnekte, i = 0 ile döngüyü başlatıyoruz. i < 5 koşulu doğru olduğu sürece döngü çalışır ve her iterasyonda i++ ile i değerini bir artırırız. Kullanıcılar şunu da sordu: “JavaScript’te bir diziyi nasıl döngüye alırım?” sorusuna for döngüsü sıkça kullanılan bir cevaptır.

💡 İpucu: for döngüleri, genellikle bir dizinin elemanlarını veya belirli bir sayı aralığındaki değerleri gezmek için kullanılır. Dizilerin uzunluğunu dizi.length ile alarak dinamik döngüler oluşturabilirsiniz.

while Döngüsü: Koşul Sağlandığı Sürece Çalışır

while döngüsü, belirli bir koşul doğru olduğu sürece çalışmaya devam eder. Kaç kez tekrar edeceğini önceden bilmediğiniz durumlarda daha uygundur.

📖 Örnek: while Döngüsü ile Koşul Kontrolü
let sayac = 0;

while (sayac < 3) {
  console.log("Sayaç değeri: " + sayac);
  sayac++;
}
// Çıktı:
// Sayaç değeri: 0
// Sayaç değeri: 1
// Sayaç değeri: 2
⚠️ Dikkat: while döngülerinde, döngüyü sonlandıracak bir koşulun veya değişken güncellemesinin döngü içinde olduğundan emin olun. Aksi takdirde, sonsuz bir döngüye girerek programınızın çökmesine neden olabilirsiniz.

do...while Döngüsü: En Az Bir Kez Çalışma Garantisi

do...while döngüsü, while döngüsüne benzer, ancak farkı şudur: kod bloğu en az bir kez çalıştıktan sonra koşul kontrol edilir. Yani, koşul başlangıçta yanlış olsa bile, döngü bir kez mutlaka çalışır.

📖 Örnek: do...while Döngüsü
let x = 5;

do {
  console.log("x'in değeri: " + x); // x = 5 olduğu halde koşul false olmasına rağmen bu satır çalışır.
  x++;
} while (x < 5);
// Çıktı:
// x'in değeri: 5

for...in ve for...of Döngüleri: Nesneler ve Diziler İçin Özel Kullanım

JavaScript, nesnelerin özellikleri ve dizilerin elemanları üzerinde kolayca döngü yapmak için özel döngü yapıları sunar.

for...in döngüsü, bir nesnenin numaralandırılabilir özelliklerinin (anahtarlarının) üzerinde döngü yapmak için kullanılır.

📖 Örnek: for...in ile Nesne Anahtarlarını Gezme
const kisi = {
  ad: "Ahmet",
  soyadi: "Yılmaz",
  yas: 30
};

for (let anahtar in kisi) {
  console.log(anahtar + ": " + kisi[anahtar]);
}
// Çıktı:
// ad: Ahmet
// soyadi: Yılmaz
// yas: 30

for...of döngüsü, yinelenebilir (iterable) nesnelerin (diziler, string’ler, Map’ler, Set’ler vb.) değerleri üzerinde döngü yapmak için kullanılır.

📖 Örnek: for...of ile Dizi Elemanlarını Gezme
const meyveler = ["Elma", "Armut", "Çilek"];

for (let meyve of meyveler) {
  console.log(meyve);
}
// Çıktı:
// Elma
// Armut
// Çilek
Döngü Türü Kullanım Alanı Özellikler
for Belirli sayıda tekrar, dizi indeksleri üzerinde gezme. Başlatma, koşul ve artırma/azaltma içerir.
while Koşul doğru olduğu sürece devam eder. Tekrar sayısı belirsiz. Döngüye başlamadan önce koşul kontrol edilir.
do...while Koşul doğru olduğu sürece devam eder. En az bir kez çalışır. Döngüye başladıktan sonra koşul kontrol edilir.
for...in Nesnelerin anahtarları (özellik adları) üzerinde gezme. Nesne özellikleri üzerinde iterasyon sağlar.
for...of Yinelenebilir (iterable) nesnelerin (diziler, stringler) değerleri üzerinde gezme. Eleman değerleri üzerinde doğrudan iterasyon sağlar.

Döngü Kontrol Deyimleri: break ve continue

Bazen döngünün normal akışını değiştirmek isteyebiliriz. JavaScript, bu amaçla break ve continue anahtar kelimelerini sunar.

break: Döngüyü Anında Sonlandırma

break deyimi, içinde bulunduğu döngüyü (for, while, do...while) veya switch ifadesini anında sonlandırır ve program akışı döngüden hemen sonraki ifadeye geçer.

📖 Örnek: break Kullanımı
for (let i = 0; i < 10; i++) {
  if (i === 5) {
    console.log("5'e ulaşıldı, döngü sonlandırılıyor.");
    break; // Döngü burada sona erer.
  }
  console.log("Sayı: " + i);
}
// Çıktı:
// Sayı: 0
// Sayı: 1
// Sayı: 2
// Sayı: 3
// Sayı: 4
// 5'e ulaşıldı, döngü sonlandırılıyor.

continue: Mevcut İterasyonu Atla

continue deyimi, döngünün mevcut iterasyonunu atlar ve döngünün bir sonraki iterasyonuna geçer. Yani, continue‘dan sonraki kod satırları o iterasyon için çalıştırılmaz.

📖 Örnek: continue Kullanımı
for (let i = 0; i < 5; i++) {
  if (i === 2) {
    console.log("2 atlanıyor.");
    continue; // i=2 olduğunda bu iterasyonun geri kalanı atlanır.
  }
  console.log("Sayı: " + i);
}
// Çıktı:
// Sayı: 0
// Sayı: 1
// 2 atlanıyor.
// Sayı: 3
// Sayı: 4

Neden Döngüler ve Koşullu İfadeler Önemlidir?

JavaScript’te döngüler ve koşullu ifadeler, modern web geliştirmenin temelini oluşturur. Bu yapılar sayesinde, kullanıcı etkileşimlerine dinamik olarak yanıt veren, veri işleyen ve karmaşık algoritmaları uygulayan web uygulamaları oluşturabiliriz.

Pratik Uygulamalar ve Verimlilik

Örneğin, bir e-ticaret sitesinde ürünleri listelemek için bir döngü kullanırız. Kullanıcının sepetindeki ürün sayısını kontrol etmek veya ödeme işlemine devam etmeden önce belirli koşulların (örn. minimum sipariş tutarı) sağlanıp sağlanmadığını doğrulamak için koşullu ifadelerden yararlanırız. Bu araçlar, kodumuzu daha az tekrar etmemizi (DRY – Don’t Repeat Yourself prensibi) ve daha verimli çalışmamızı sağlar.

Kullanıcılar genellikle “JavaScript ile form doğrulama nasıl yapılır?” veya “JavaScript’te dinamik liste oluşturma” gibi konularda arama yaparlar. Bu soruların cevapları doğrudan koşullu ifadeler ve döngülerin kullanımıyla ilişkilidir. Bu kavramlara hakim olmak, sadece web geliştirme alanında değil, genel programlama mantığınızı da güçlendirecektir.

✏️ Kendinizi Test Edin
  1. Bir kullanıcının yaşını (let yas = 20;) kontrol eden ve eğer 18’den küçükse “Yaşınız uygun değil”, 18-65 arasındaysa “Giriş yapabilirsiniz” ve 65’ten büyükse “Emekliler kulübüne hoş geldiniz” mesajını gösteren bir if...else if...else yapısı yazın.
  2. 1’den 10’a kadar olan sayıları ekrana yazdıran bir for döngüsü oluşturun. Ancak, 5 sayısına geldiğinde “5 sayısı atlandı” yazdırıp bu sayıyı döngüden çıkarın (yazdırmayın) ve döngüye devam edin.
  3. Bir ürün fiyatı (let fiyat = 120;) ve indirim kodu (let kod = "IND20";) olduğunu varsayalım. Eğer kod “IND20” ise fiyata %20 indirim uygulayan, “IND10” ise %10 indirim uygulayan, başka bir kod ise indirim uygulamayan bir switch ifadesi yazarak nihai fiyatı hesaplayın.
  4. Boş bir dizi oluşturun ve bir while döngüsü kullanarak bu diziye 0’dan başlayarak 4’e kadar sayıları ekleyin (toplam 5 eleman).
  5. Aşağıdaki nesnenin tüm anahtarlarını ve değerlerini for...in döngüsü kullanarak konsola yazdırın: const kitap = { baslik: "Sefiller", yazar: "Victor Hugo", yil: 1862 };
📝 Konu Özeti
  • Koşullu İfadeler (if, else if, else, switch): Programınızın belirli koşullara göre farklı kod yolları izlemesini sağlar. Karar verme mekanizmasıdır.
  • Döngüler (for, while, do...while, for...in, for...of): Belirli bir kod bloğunu tekrar tekrar çalıştırmak için kullanılır, kod tekrarını önler ve verimliliği artırır.
  • for Döngüsü: Genellikle belirli sayıda tekrar veya dizi elemanlarını gezmek için idealdir.
  • while ve do...while Döngüleri: Bir koşul doğru olduğu sürece çalışır; do...while en az bir kez çalışmayı garantiler.
  • for...in ve for...of: Sırasıyla nesne anahtarları ve yinelenebilir nesne değerleri için özel döngü yapılarıdır.
  • Döngü Kontrol Deyimleri (break, continue): Döngü akışını değiştirmeye yarar; break döngüyü sonlandırır, continue mevcut iterasyonu atlar.
  • Bu yapılar, dinamik ve etkileşimli web uygulamaları oluşturmak için JavaScript’in vazgeçilmez temel taşlarıdır.

Öğrendiklerinizi Pekiştirin ve Bir Sonraki Adıma Geçin

JavaScript’teki döngüler ve koşullu ifadeler, programlama mantığınızın temelini oluşturur ve size kod üzerinde güçlü bir kontrol sağlar. Bu konuları ne kadar iyi anlarsanız, o kadar karmaşık ve işlevsel uygulamalar geliştirebilirsiniz. Unutmayın, pratik yapmak bu bilgileri pekiştirmenin en etkili yoludur. Yukarıdaki alıştırma sorularını çözerek ve kendi küçük projelerinizde bu yapıları kullanarak bilginizi sağlamlaştırın.

Bir sonraki adımda, fonksiyonlar, diziler ve nesneler gibi JavaScript’in diğer temel yapı taşlarını keşfederek programlama yolculuğunuza devam edebilirsiniz. Her yeni kavram, kodlama yeteneklerinize yeni bir boyut katacaktır. Başarılar dileriz!

Deniz

DersMerkezi.net.tr’nin yazarı, eğitim alanında yıllara dayanan deneyime sahip bir uzmandır ve öğrencilerin öğrenme sürecini desteklemeyi hedefler. Matematik, fen bilimleri, tarih, dil ve edebiyat başta olmak üzere birçok ders alanında içerik üretir ve konuları sade, anlaşılır ve adım adım rehberler halinde sunar.

İlgili Makaleler

Bir yanıt yazın

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

Başa dön tuşu