Istruzione JavaScript if ... else (con esempi)

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… elseistruzione JavaScript per creare un programma in grado di prendere decisioni.

In JavaScript, ci sono tre forme di if… elsedichiarazione.

  1. istruzione if
  2. if … else dichiarazione
  3. if … else if … else dichiarazione

JavaScript if Statement

La sintassi ifdell'istruzione è:

 if (condition) ( // the body of if )

L' ifistruzione valuta la condizione all'interno delle parentesi ().

  1. Se la condizione viene valutata true, ifviene eseguito il codice all'interno del corpo di .
  2. Se la condizione viene valutata false, il codice all'interno del corpo di ifviene ignorato.

Nota: il codice all'interno ( )è il corpo ifdell'istruzione.

Utilizzo dell'istruzione if

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> 0restituisce true. E il corpo della ifdichiarazione 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> 0restituisce false. Quindi, il corpo ifdell'istruzione viene saltato.

Poiché console.log("The if statement is easy");è al di fuori del corpo ifdell'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 ifpuò avere una elseclausola facoltativa . La sintassi if… elsedell'istruzione è:

 if (condition) ( // block of code if condition is true ) else ( // block of code if condition is false )

L' if… elseistruzione valuta la condizione all'interno delle parentesi.

Se la condizione viene valutata a true,

  1. il codice all'interno del corpo di ifviene eseguito
  2. il codice all'interno del corpo di elseviene saltato dall'esecuzione

Se la condizione viene valutata a false,

  1. il codice all'interno del corpo di elseviene eseguito
  2. il codice all'interno del corpo di ifviene saltato dall'esecuzione
Utilizzo dell'istruzione if … else

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> 0restituisce true. Quindi, il corpo ifdell'istruzione viene eseguito e il corpo elsedell'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> 0restituisce false. Quindi, il corpo elsedell'istruzione viene eseguito e il corpo ifdell'istruzione viene saltato.

JavaScript if … else if istruzione

L' if… elseistruzione viene utilizzata per eseguire un blocco di codice tra due alternative. Tuttavia, se è necessario scegliere tra più di due alternative, è if… else if… elsepossibile utilizzare.

La sintassi if… else if… elsedell'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.
Utilizzo dell'istruzione if … else if … else

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> 0restituisce false. Quindi, viene number == 0valutata la seconda condizione di test truee viene eseguito il blocco corrispondente.

Istruzione if … else annidata

Puoi anche utilizzare if… elseun'istruzione all'interno di if… elseun'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… elseun'istruzione. Per saperne di più, visita JavaScript Ternary Operator.

Se è necessario scegliere tra più di un'alternativa basata su una determinata condizione di test, è switchpossibile utilizzare l' istruzione. Per saperne di più, visita JavaScript switch.

Articoli interessanti...