La prima istruzione per controllare il flusso del programma è
l'istruzione
if...else. Questa istruzione include
la parola chiave if seguita da un'istruzione condizionale tra
parentesi. Se questa condizione risulta true, allora verrà
eseguita l'istruzione o il set di istruzioni scritte subito
sotto la condizione. Se invece la condizione risulta false,
verrà eseguita l'istruzione o il set di istruzioni contenute
dopo la parola chiave else.
Facciamo un esempio concreto per chiarire il concetto.
Supponiamo di voler creare un'istruzione con la quale, se il
giorno in cui l'utente visita la nostra pagina Web è il 1°
maggio, gli comunichiamo che è la festa del lavoro, altrimenti
gli comunichiamo che è costretto a lavorare!
Esempio 3.1
<html>
<head></head>
<body>
<script language="javascript">
var giorno = 2;
var mese = "maggio";
if (giorno == 2 && mese == "maggio")
document.write("Oggi è la festa del lavoro!");
else
document.write("Ti tocca lavorare pure oggi!");
</script>
</body>
</html> |
Nell'esempio 3.1 abbiamo dichiarato le variabili giorno
e mese per poi inserirle nell'istruzione if...else. Se la
variabile giorno fosse stata uguale a 1 e la variabile mese
uguale a maggio, avremmo visualizzato sul nostro browser la
scritta "Oggi è la festa del lavoro!". Ma, poichè la variabile
giorno è uguale a 2, sul nostro browser comparirà invece la
scritta "Ti tocca lavorare pure oggi!".
Alcune precisazioni: l'istruzione condizionale che segue la
parola chiave if non deve necessariamente includere gli
operatori booleani. Possiamo anche usare una semplice istruzione
tipo: if (car == black).
Se le istruzioni che seguono le parole chiave if ed else sono
più di una, allora è necessario includerle in una coppia di
parentesi graffe.
Infine, le istruzioni if possono essere nidificate l'una dentro
l'altra, permettendo allo sviluppatore di verificare condizioni
sempre più dettagliate. Vediamo un esempio:
Esempio 3.2
<html>
<head></head>
<body>
<script language="javascript">
var macchina = "Ferrari";
var colore = "rosso";
var anno = "1968";
if (macchina == "Ferrari")
if(colore == "rosso")
if(anno == 1968)
document.write("Wow, è una Ferrari d'epoca!");
else
document.write("Siamo sicuri che sia una Ferrari?");
</script>
</body>
</html> |
In questo esempio, se tutte e tre le condizioni risultano
true allora sul browser visualizzeremo la frase "Wow, è una
Ferrari d'epoca!". E'sufficiente però che anche una sola delle
tre condizioni non sia true che sul browser vedremo scritto
invece "Siamo sicuri che sia una Ferrari?".