JavaScript anahtarı Bildirimi
Örnek
Kullanıcı girişine göre bir kod bloğu yürütün:
var text;
var fruits = document.getElementById("myInput").value;
switch(fruits) {
case "Banana":
text = "Banana is good!";
break;
case "Orange":
text = "I am not a fan of orange.";
break;
case "Apple":
text = "How you like them apples?";
break;
default:
text = "I have never heard of that fruit...";
}
Aşağıda daha fazla "Kendiniz Deneyin" örnekleri.
Tanım ve Kullanım
Switch ifadesi, farklı durumlara bağlı olarak bir kod bloğu yürütür.
switch ifadesi, JavaScript'in farklı koşullara dayalı olarak farklı eylemleri gerçekleştirmek için kullanılan "Koşullu" İfadelerinin bir parçasıdır. Yürütülecek birçok kod bloğundan birini seçmek için anahtarı kullanın. Bu, uzun, iç içe if/else ifadeleri için mükemmel bir çözümdür.
switch ifadesi bir ifadeyi değerlendirir. İfadenin değeri daha sonra yapıdaki her bir durumun değerleriyle karşılaştırılır. Bir eşleşme varsa, ilgili kod bloğu yürütülür.
switch ifadesi genellikle bir break veya varsayılan bir anahtar sözcük (veya her ikisi) ile birlikte kullanılır. Bunların ikisi de isteğe bağlıdır:
break anahtar sözcüğü, anahtar bloğundan çıkar . Bu, blok içinde daha fazla kod yürütme ve/veya vaka testi yürütmesini durduracaktır. Break atlanırsa, switch ifadesindeki bir sonraki kod bloğu yürütülür.
Varsayılan anahtar kelime, büyük/küçük harf eşleşmesi olmadığında çalıştırılacak bazı kodları belirtir . Bir anahtarda yalnızca bir varsayılan anahtar sözcük olabilir. Bu isteğe bağlı olsa da, beklenmedik durumlarla ilgileneceği için kullanmanız önerilir.
Sözdizimi
switch(expression) {
case n:
code block
break;
case n:
code block
break;
default:
default code block
}
Parametre Değerleri
Parameter | Description |
---|---|
expression | Required. Specifies an expression to be evaluated. The expression is evaluated once. The value of the expression is compared with the values of each case labels in the structure. If there is a match, the associated block of code is executed |
Daha fazla örnek
Örnek
Hafta içi adını hesaplamak için bugünün hafta içi numarasını kullanın (Pazar=0, Pazartesi=1, Salı=2, ...):
var day;
switch (new Date().getDay()) {
case 0:
day = "Sunday";
break;
case 1:
day = "Monday";
break;
case 2:
day = "Tuesday";
break;
case 3:
day = "Wednesday";
break;
case 4:
day = "Thursday";
break;
case 5:
day = "Friday";
break;
case 6:
day = "Saturday";
break;
default:
day = "Unknown Day";
}
Örnek
Bugün Cumartesi veya Pazar değilse, varsayılan bir mesaj yazın:
var text;
switch (new Date().getDay()) {
case 6:
text = "Today is Saturday";
break;
case 0:
text = "Today is Sunday";
break;
default:
text = "Looking forward to the Weekend";
}
Örnek
Bazen farklı durumların aynı kodu kullanmasını veya ortak bir varsayılana geçiş yapmasını isteyeceksiniz.
Bu örnekte, vakaların aynı kod bloğunu paylaştığını ve varsayılan durumun bir anahtar bloğundaki son durum olması gerekmediğini unutmayın (ancak, varsayılan durum, anahtar bloğundaki son durum DEĞİLSE, bitirmeyi unutmayın). bir mola ile).
var text;
switch (new Date().getDay()) {
case 1:
case 2:
case 3:
default:
text = "Looking forward to the Weekend";
break;
case 4:
case 5:
text = "Soon it is Weekend";
break;
case 0:
case 6:
text = "It is Weekend";
}
Örnek
Bir bilgi istemi kutusundan kullanıcı girişine dayalı olarak bir kod bloğu yürütmek için switch deyimini kullanma:
var text;
var favDrink = prompt("What's your favorite cocktail drink?");
switch(favDrink) {
case "Martini":
text = "Excellent choice! Martini is good for your soul.";
break;
case "Daiquiri":
text = "Daiquiri is my favorite too!";
break;
case "Cosmopolitan":
text = "Really? Are you sure the Cosmopolitan is your favorite?";
break;
default:
text = "I have never heard of that one..";
}
İlgili Sayfalar
JavaScript Eğitimi: JavaScript If...Else İfadeleri
JavaScript Eğitimi: JavaScript Switch Beyanı
JavaScript Referansı: JavaScript if/else Beyanı
JavaScript Referansı: JavaScript break Bildirimi
Tarayıcı Desteği
switch
bir ECMAScript1 (ES1) özelliğidir.
ES1 (JavaScript 1997) tüm tarayıcılarda tam olarak desteklenir:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes | Yes |