CodeBlanks Logo Icon CodeBlanks

switch

switch, case, break ve default ile çoklu durum seçmeyi öğrenirsin.

switch temelleri

Bir değişkenin değerine göre çoklu durum seçmek için switch kullanılır. Yazım: switch (değer) { case x: ...; break; default: ...; }. case etiketi bir değeri, break çıkışı, default hiçbir case eşleşmezse çalıyşacak bloğu belirtir.

Örneğin gün adı: switch (day) { case 1: console.log("Pazartesi"); break; case 2: console.log("Salı"); break; default: console.log("Bilinmiyor"); }. switch, tek bir değerin birçok olası eşitliğine bakar; aralık kontrolü için if/else if daha uygundur.

break ve düşme

switch'te break yazmazsan, eşleşen case'ten sonraki case'ler de sırayla çalışır. Bu davranışa düşme (fall-through) denir. Genellikle istenmeyen bir durum olduğu için her case'in sonuna break konur.

Bazı durumlarda düşme yararlıdır: birden fazla değerin aynı kodu çalıştırması isteniyorsa case'ler alt alta yazılır. Örneğin case 1: case 2: console.log("Hafta içi"); break; ile 1 ve 2 aynı çıktıyı verir. Kasıtlı düşme dışında her zaman break kullanmak güvenlidir.

Uygulama Gün adını yazdır

day değişkenine 2 değeri verilmiş. Bir switch yaz: case 1 "Pazartesi", case 2 "Salı" yazsın; her case'in sonunda break olsun. default da "Bilinmiyor" yazsın. Çıktı tek satırda Salı olmalı.

Başlangıç kodu

index.js
const day = 2;
// switch deyimini buraya yaz

Örnek çözüm

index.js
const day = 2;
switch (day) {
    case 1:
        console.log("Pazartesi");
        break;
    case 2:
        console.log("Salı");
        break;
    default:
        console.log("Bilinmiyor");
}

Beklenen çıktı

Salı

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Anahtar kelimeyi işleve eşle

Kavram Anlamı
switch Çoklu durum başlatır
case Bir değeri etiketler
break Çıkış yapar
default Eşleşme olmadığında

2 case etiketini yaz

Soru
switch (day) {
____ 1:
        console.log("Pazartesi");
        break;
}
Cevap
switch (day) {
case 1:
        console.log("Pazartesi");
        break;
}

Açıklama: case ile bir değer etiketlenir.

3 switch'te break yazmazsan ne olur?

index.js
switch (x) { case 1: console.log("a"); /* break yok */ case 2: console.log("b"); break; }
  • Yalnız "a" yazar
  • Yalnız "b" yazar
  • Hata verir
  • Düşme olur, ikisini de yazar Doğru cevap

Açıklama: break olmadığı için düşme olur; hem "a" hem "b" yazılır.

Başlangıç bölümündeki tüm dersler