Apakah ini benar?
if(condition)
{
}
elseif(condition)
{
}
else
{
}
Apakah ini benar?
if(condition)
{
}
elseif(condition)
{
}
else
{
}
Jawaban:
JavaScript's ifif dalam format "else if", misalnya:
if (condition) {
} else if (other_condition) {
} else {
}
elseif, perl punya elsif(saya pikir), dan Python sudah elif.. pada mulanya membuat saya kesal, tapi ... Saya kira itu agak lucu. Itu melayani sedikit tujuan dalam Python dan PHP, karena itu tidak akan bekerja dengan sintaks usus mereka sebaliknya.
if/ elseblok, tetapi orang-orang dianjurkan untuk menggunakannya, jadi saya bisa mengerti mengapa ini terlihat tidak benar bagi pengguna baru.
Anda bisa menggunakan sintaks ini yang secara fungsional setara:
switch (true) {
case condition1:
//e.g. if (condition1 === true)
break;
case condition2:
//e.g. elseif (condition2 === true)
break;
default:
//e.g. else
}
Ini berfungsi karena masing condition- masing sepenuhnya dievaluasi sebelum dibandingkan dengan switchnilai, sehingga yang pertama dinilai trueakan cocok dan cabangnya akan dieksekusi. Cabang berikutnya tidak akan dieksekusi, asalkan Anda ingat untuk menggunakannyabreak .
Perhatikan bahwa perbandingan ketat digunakan, sehingga cabang yang conditionhanya "benar" tidak akan dieksekusi. Anda dapat melemparkan nilai truthy untuk truedengan negasi ganda: !!condition.
switch (true)bahkan tidak masuk akal.
truemaka kasing itu akan terpenuhi - persis seperti else if.
if([]) alert('a')menghasilkan boolean, mis. Menghasilkan peringatan tetapi switch(true){case []:alert('a')}tidak. Itu karena []nilai kebenaran tetapi tidak sama dengan true, seperti yang dijelaskan oleh @zwol dalam hasil edit ini .
Sebenarnya, secara teknis ketika indentasi benar, itu akan menjadi:
if (condition) {
...
} else {
if (condition) {
...
} else {
...
}
}
Tidak ada else if, secara tegas.
(Pembaruan: Tentu saja, seperti yang ditunjukkan, gaya di atas tidak dianggap baik.)
if (condition1) { ... } else if (condition2) { ... } else { ... }.
else ifAnda sebenarnya menghilangkan blok opsional {...}. Saya merujuk berdasarkan EMCAScript dan MDN ..
else { if ... }adalah gaya yang baik.
if ( 100 < 500 ) {
//any action
}
else if ( 100 > 500 ){
//any another action
}
Mudah, gunakan ruang
Pernyataan bersyarat digunakan untuk melakukan tindakan yang berbeda berdasarkan kondisi yang berbeda.
Gunakan ifuntuk menentukan blok kode yang akan dieksekusi, jika kondisi yang ditentukan benar
Gunakan elseuntuk menentukan blok kode yang akan dieksekusi, jika kondisi yang sama salah
Gunakan else ifuntuk menentukan kondisi baru untuk diuji, jika kondisi pertama salah
Anda kehilangan ruang antara elsedanif
Seharusnya else ifbukanelseif
if(condition)
{
}
else if(condition)
{
}
else
{
}
ifdanelsebenar-benar tidak perluelseif.