In questo tutorial imparerai a conoscere l'istruzione if … else per creare programmi decisionali con l'aiuto di esempi.
Nella programmazione di computer, possono verificarsi situazioni in cui è necessario eseguire un blocco di codice tra più di un'alternativa. Ad esempio, assegnare i voti A , B o C in base ai voti ottenuti da uno studente.
In tali situazioni, è possibile utilizzare l' if… else
istruzione JavaScript per creare un programma in grado di prendere decisioni.
In JavaScript, ci sono tre forme di if… else
dichiarazione.
- istruzione if
- if … else dichiarazione
- if … else if … else dichiarazione
JavaScript if Statement
La sintassi if
dell'istruzione è:
if (condition) ( // the body of if )
L' if
istruzione valuta la condizione all'interno delle parentesi ()
.
- Se la condizione viene valutata
true
,if
viene eseguito il codice all'interno del corpo di . - Se la condizione viene valutata
false
, il codice all'interno del corpo diif
viene ignorato.
Nota: il codice all'interno ( )
è il corpo if
dell'istruzione.

Esempio 1: istruzione if
// check if the number is positive const number = prompt("Enter a number: "); // check if number is greater than 0 if (number> 0) ( // the body of the if statement console.log("The number is positive"); ) console.log("The if statement is easy");
Uscita 1
Immettere un numero: 2 Il numero è positivo L'istruzione if è facile
Supponiamo che l'utente abbia inserito 2 . In questo caso, la condizione number> 0
restituisce true
. E il corpo della if
dichiarazione viene eseguito.
Uscita 2
Immettere un numero: -1 L'istruzione if è facile
Supponiamo che l'utente abbia inserito -1 . In questo caso, la condizione number> 0
restituisce false
. Quindi, il corpo if
dell'istruzione viene saltato.
Poiché console.log("The if statement is easy");
è al di fuori del corpo if
dell'istruzione, viene sempre eseguita.
Gli operatori di confronto e logici vengono utilizzati nelle condizioni. Quindi, per saperne di più sul confronto e sugli operatori logici, puoi visitare JavaScript Comparison and Logical Operators.
Istruzione JavaScript if … else
Un'istruzione if
può avere una else
clausola facoltativa . La sintassi if… else
dell'istruzione è:
if (condition) ( // block of code if condition is true ) else ( // block of code if condition is false )
L' if… else
istruzione valuta la condizione all'interno delle parentesi.
Se la condizione viene valutata a true
,
- il codice all'interno del corpo di
if
viene eseguito - il codice all'interno del corpo di
else
viene saltato dall'esecuzione
Se la condizione viene valutata a false
,
- il codice all'interno del corpo di
else
viene eseguito - il codice all'interno del corpo di
if
viene saltato dall'esecuzione

Esempio 2: istruzione if… else
// check is the number is positive or negative/zero const number = prompt("Enter a number: "); // check if number is greater than 0 if (number> 0) ( console.log("The number is positive"); ) // if number is not greater than 0 else ( console.log("The number is either a negative number or 0"); ) console.log("The if… else statement is easy");
Uscita 1
Immettere un numero: 2 Il numero è positivo L'istruzione if… else è semplice
Supponiamo che l'utente abbia inserito 2 . In questo caso, la condizione number> 0
restituisce true
. Quindi, il corpo if
dell'istruzione viene eseguito e il corpo else
dell'istruzione viene saltato.
Uscita 2
Immettere un numero: -1 Il numero può essere un numero negativo o 0 L'istruzione if … else è facile
Supponiamo che l'utente abbia inserito -1 . In questo caso, la condizione number> 0
restituisce false
. Quindi, il corpo else
dell'istruzione viene eseguito e il corpo if
dell'istruzione viene saltato.
JavaScript if … else if istruzione
L' if… else
istruzione viene utilizzata per eseguire un blocco di codice tra due alternative. Tuttavia, se è necessario scegliere tra più di due alternative, è if… else if… else
possibile utilizzare.
La sintassi if… else if… else
dell'istruzione è:
if (condition1) ( // code block 1 ) else if (condition2)( // code block 2 ) else ( // code block 3 )
- Se condition1 restituisce
true
, viene eseguito il blocco di codice 1 . - Se condition1 restituisce
false
, viene valutata condition2 .- Se la condizione 2 è
true
, il blocco di codice 2 viene eseguito. - Se la condizione2 è
false
, il blocco di codice 3 viene eseguito.
- Se la condizione 2 è

Esempio 3: if … else if Istruzione
// check if the number if positive, negative or zero const number = prompt("Enter a number: "); // check if number is greater than 0 if (number> 0) ( console.log("The number is positive"); ) // check if number is 0 else if (number == 0) ( console.log("The number is 0"); ) // if number is neither greater than 0, nor zero else ( console.log("The number is negative"); ) console.log("The if… else if… else statement is easy");
Produzione
Immettere un numero: 0 Il numero è 0 L'istruzione if … else if … else è facile
Supponiamo che l'utente abbia immesso 0 , quindi la prima condizione di test number> 0
restituisce false
. Quindi, viene number == 0
valutata la seconda condizione di test true
e viene eseguito il blocco corrispondente.
Istruzione if … else annidata
Puoi anche utilizzare if… else
un'istruzione all'interno di if… else
un'istruzione. Questo è noto come istruzione if … else annidata .
Esempio 4: istruzione if … else annidata
// check if the number is positive, negative or zero const number = prompt("Enter a number: "); if (number>= 0) ( if (number == 0) ( console.log("You entered number 0"); ) else ( console.log("You entered a positive number"); ) ) else ( console.log("You entered a negative number"); )
Produzione
Enter a number: 5 You entered a positive number
Suppose the user entered 5. In this case, the condition number>= 0
evaluates to true
, and the control of the program goes inside the outer if
statement.
Then, the test condition, number == 0
, of the inner if
statement is evaluated. Since it's false, the else
clause of the inner if
statement is executed.
Note: As you can see, nested if… else
makes our logic complicated and we should try to avoid using nested if… else
whenever possible.
Body of if… else With Only One Statement
If the body of if… else
has only one statement, we can omit ( )
in our programs. For example, you can replace
const number = 2; if (number> 0) ( console.log("The number is positive."); ) else ( console.log("The number is negative or zero."); )
with
const number = 2; if (number> 0) console.log("The number is positive."); else console.log("The number is negative or zero.");
Output
The number is positive.
More on Decision Making
In alcune situazioni, un operatore ternario può sostituire if… else
un'istruzione. Per saperne di più, visita JavaScript Ternary Operator.
Se è necessario scegliere tra più di un'alternativa basata su una determinata condizione di test, è switch
possibile utilizzare l' istruzione. Per saperne di più, visita JavaScript switch.