È corretto?
if(condition)
{
}
elseif(condition)
{
}
else
{
}
È corretto?
if(condition)
{
}
elseif(condition)
{
}
else
{
}
Risposte:
L'altro JavaScript è nel formato "else if", ad esempio:
if (condition) {
} else if (other_condition) {
} else {
}
elseif, perl ha elsif(penso), e Python ha elif.. quel tipo di mi ha infastidito all'inizio, ma ... immagino sia piuttosto carino. Tuttavia ha un leggero scopo in Python e PHP, altrimenti non funzionerebbe con la loro sintassi del colon.
if/ elseblocchi, ma le persone sono incoraggiate a usarle, quindi posso capire perché questo non sembra corretto per un nuovo utente.
È possibile utilizzare questa sintassi che è funzionalmente equivalente:
switch (true) {
case condition1:
//e.g. if (condition1 === true)
break;
case condition2:
//e.g. elseif (condition2 === true)
break;
default:
//e.g. else
}
Questo funziona perché ognuno conditionviene valutato completamente prima del confronto con il switchvalore, quindi il primo che valuta truecorrisponderà e il suo ramo verrà eseguito. I rami successivi non verranno eseguiti, a condizione che si ricordi di utilizzarebreak .
Si noti che viene utilizzato un confronto rigoroso , quindi un ramo la cui conditionverità è "verità" non verrà eseguito. È possibile inserire un valore truthy a truecon doppia negazione: !!condition.
switch (true)non ha nemmeno senso.
trueallora quel caso sarà soddisfatto - esattamente come else if.
if([]) alert('a')produce l'avviso ma switch(true){case []:alert('a')}non lo fanno. Questo perché []è un valore veritiero ma non uguale a true, come spiegato da @zwol in questa modifica .
In realtà, tecnicamente se rientrato correttamente, sarebbe:
if (condition) {
...
} else {
if (condition) {
...
} else {
...
}
}
Non c'è else if, a rigor di termini.
(Aggiornamento: ovviamente, come sottolineato, quanto sopra non è considerato un buon stile.)
if (condition1) { ... } else if (condition2) { ... } else { ... }.
else ifsi sta omettendo il blocco opzionale {...}. Mi riferivo basato su EMCAScript e MDN ..
else { if ... }buon stile.
if ( 100 < 500 ) {
//any action
}
else if ( 100 > 500 ){
//any another action
}
Facile, usa lo spazio
Le istruzioni condizionali vengono utilizzate per eseguire azioni diverse in base a condizioni diverse.
Utilizzare ifper specificare un blocco di codice da eseguire, se una condizione specificata è vera
Utilizzare elseper specificare un blocco di codice da eseguire, se la stessa condizione è falsa
Utilizzare else ifper specificare una nuova condizione da verificare, se la prima condizione è falsa
Manca uno spazio tra elseeif
Dovrebbe essere else ifinvece dielseif
if(condition)
{
}
else if(condition)
{
}
else
{
}
ifeelsenon ce n'è davvero bisognoelseif.