Apakah ini benar?
if(condition)
{
}
elseif(condition)
{
}
else
{
}
javascript
if-statement
syntax
Hari Gillala
sumber
sumber
if
danelse
benar-benar tidak perluelseif
.elseif
, perl punyaelsif
(saya pikir), dan Python sudahelif
.. 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
/else
blok, tetapi orang-orang dianjurkan untuk menggunakannya, jadi saya bisa mengerti mengapa ini terlihat tidak benar bagi pengguna baru.Cukup tambahkan spasi:
sumber
Anda bisa menggunakan sintaks ini yang secara fungsional setara:
Ini berfungsi karena masing
condition
- masing sepenuhnya dievaluasi sebelum dibandingkan denganswitch
nilai, sehingga yang pertama dinilaitrue
akan cocok dan cabangnya akan dieksekusi. Cabang berikutnya tidak akan dieksekusi, asalkan Anda ingat untuk menggunakannyabreak
.Perhatikan bahwa perbandingan ketat digunakan, sehingga cabang yang
condition
hanya "benar" tidak akan dieksekusi. Anda dapat melemparkan nilai truthy untuktrue
dengan negasi ganda:!!condition
.sumber
switch (true)
bahkan tidak masuk akal.true
maka kasing itu akan terpenuhi - persis sepertielse if
.if([]) alert('a')
menghasilkan boolean, mis. Menghasilkan peringatan tetapiswitch(true){case []:alert('a')}
tidak. Itu karena[]
nilai kebenaran tetapi tidak sama dengantrue
, seperti yang dijelaskan oleh @zwol dalam hasil edit ini .Sebenarnya, secara teknis ketika indentasi benar, itu akan menjadi:
Tidak ada
else if
, secara tegas.(Pembaruan: Tentu saja, seperti yang ditunjukkan, gaya di atas tidak dianggap baik.)
sumber
if (condition1) { ... } else if (condition2) { ... } else { ... }
.else if
Anda sebenarnya menghilangkan blok opsional{...}
. Saya merujuk berdasarkan EMCAScript dan MDN ..else { if ... }
adalah gaya yang baik.Mudah, gunakan ruang
sumber
Pernyataan bersyarat digunakan untuk melakukan tindakan yang berbeda berdasarkan kondisi yang berbeda.
Gunakan
if
untuk menentukan blok kode yang akan dieksekusi, jika kondisi yang ditentukan benarGunakan
else
untuk menentukan blok kode yang akan dieksekusi, jika kondisi yang sama salahGunakan
else if
untuk menentukan kondisi baru untuk diuji, jika kondisi pertama salahsumber
sumber
Anda kehilangan ruang antara
else
danif
Seharusnya
else if
bukanelseif
sumber