Bu doğru mu?
if(condition)
{
}
elseif(condition)
{
}
else
{
}
Bu doğru mu?
if(condition)
{
}
elseif(condition)
{
}
else
{
}
Yanıtlar:
JavaScript's elseif "else if" biçimindedir, örneğin:
if (condition) {
} else if (other_condition) {
} else {
}
elseif
, perl var elsif
(sanırım), ve Python elif
ilk başta .. bu tür beni rahatsız, ama ... Sanırım biraz şirin. Python ve PHP'de hafif bir amaca hizmet eder, çünkü aksi takdirde kolon sözdizimiyle çalışmaz.
if
/ else
bloklar için gerekli değildir , ancak insanlar bunları kullanmaya teşvik edilir, bu yüzden bunun neden yeni bir kullanıcı için yanlış göründüğünü anlayabilirim.
İşlevsel olarak eşdeğer olan bu sözdizimini kullanabilirsiniz:
switch (true) {
case condition1:
//e.g. if (condition1 === true)
break;
case condition2:
//e.g. elseif (condition2 === true)
break;
default:
//e.g. else
}
Bu condition
, her biri switch
değerle karşılaştırılmadan önce tam olarak değerlendirildiğinden çalışır , bu nedenle değerlendirilen ilk değer true
eşleşir ve dalı yürütülür. Kullanmayı hatırlamanızbreak
koşuluyla, sonraki şubeler yürütülmez .
O Not sıkı olan bir dal böylece karşılaştırma, kullanılan condition
sadece bir "truthy" olacak değil yürütülecek. Sen bir truthy değer dağıtmak için true
çift olumsuzlama ile: !!condition
.
switch (true)
mantıklı bile değildir.
true
bu durum karşılanır - aynen olduğu gibi else if
.
if([]) alert('a')
uyarıyı üretir, ancak switch(true){case []:alert('a')}
vermez. Çünkü bu düzenlemede açıkladığı gibi @zwol []
dürüst bir değerdir ama eşit değildir . true
Aslında, teknik olarak uygun şekilde girintilendiğinde, şöyle olur:
if (condition) {
...
} else {
if (condition) {
...
} else {
...
}
}
Hiçbir yoktur else if
açıkçası.
(Güncelleme: Tabii ki, belirtildiği gibi, yukarıdaki iyi stil olarak kabul edilmez .)
if (condition1) { ... } else if (condition2) { ... } else { ... }
.
else if
isteğe bağlı bloğu atlıyorsunuz {...}
. EMCAScript ve MDN'ye dayanıyordum ..
else { if ... }
iyi bir stil olan yanlış izlenim verebilir .
if ( 100 < 500 ) {
//any action
}
else if ( 100 > 500 ){
//any another action
}
Kolay kullanım alanı
Koşullu ifadeler, farklı koşullara bağlı olarak farklı eylemler gerçekleştirmek için kullanılır.
if
Belirli bir koşul doğruysa yürütülecek bir kod bloğu belirtmek için kullanın
else
Aynı koşul yanlışsa yürütülecek bir kod bloğu belirtmek için kullanın
else if
İlk koşul yanlışsa test edilecek yeni bir koşul belirtmek için kullanın
Sen arasına boşluk eksik else
veif
Bu olmalı else if
yerineelseif
if(condition)
{
}
else if(condition)
{
}
else
{
}
if
veelse
gerçekten gerek yokelseif
.