JavaScript: Le strutture condizionali (if, else if e else).

Client_JS

Con la valigia di conoscenza che abbiamo riempito finora, finalmente da questa lezione in poi inizieremo a scrivere qualche programmino vero e proprio, però per poter fare ciò dobbiamo prima di tutto prendere conoscenza delle cosiddette strutture di controllo del flusso del programma dette anche semplicemente condizioni.

Come in ogni linguaggio di programmazione che si rispetti, anche in Javascript è possibile definire delle condizioni al verificarsi delle quali deve o meno accadere qualcosa. Per fare ciò ci si serve degli operatori if, else if, else i quali corrispondono alle specifiche condizionali “se”, “oppure se” e “oppure”.

La sintassi in Javascript per eseguire un’istruzione if è la seguente:

if (condizione) {
  istruzioni;
}

La condizione segue l’istruzione if e viene racchiusa tra le parentesi tonde, mentre le istruzioni da eseguire, nel caso la condizione si verifichi, vengono racchiuse tra le parentesi graffe.

Se per caso vi è una sola istruzione e questa viene scritta su una singola riga è possibile omettere le parentesi graffe come nel seguente esempio:

if (condizione) istruzione;

Inoltre possiamo dire al programma come comportarsi in caso la condizione non si verifichi attraverso l’ausilio di else:

if (condizione) {
  istruzioni;
}else{
  istruzioni;
}

Con l’utilizzo di else non c’è bisogno di specificare tra parentesi tonde la condizione, dato che il programma valuterà tutte le altre situazioni possibili, al di fuori di quella specificata nell’istruzione if. Quindi se la prima condizione if non si verifica il programma eseguirà quanto specificato nel blocco else.

Questa vista finora è una struttura condizionale molto semplice, in realtà è possibile realizzare strutture condizionali molto più complesse, attraverso l’introduzione della clausola else if che in semplici parole aggiunge N nuove possibilità, in quanto a differenza di ifelse che possono essere utilizzate una sola volta, al contrario else if la si può utilizzare molteplici volte creando così molteplici nuove possibilità, come nel seguente esempio:

if (condizione 1) {
  istruzioni;
}
else if (condizione 2) {
  istruzioni;
}
else if (condizione 3) {
  istruzioni;
}
else if (condizione N) {
  istruzioni;
}else{
  istruzioni;
}

Vediamo ora un esempio di una semplice struttura di controllo finalizzata a stampare a video un messaggio differente a seconda della risoluzione dello schermo dell’utente:

var screenwidth = screen.width;
if (screenwidth < 400) {
  document.write('Stai usando uno smartphone');    
}
if (screenwidth < 800) {
  document.write('Stai usando un tablet');    
}else{
  document.write('Stai usando un computer');    
}

In questo esempio molto banalmente si intercetta la larghezza dello schermo dell’utente e attraverso una struttura condizionale a tre blocchi facciamo apparire sullo schermo dell’utente un messaggio diverso a seconda della risoluzione dello schermo che viene utilizzato.

Di seguito vediamo invece un esempio che mostra come costruire istruzioni condizionali composite, e più precisamente vedremo come utilizzare l’operatore logico AND (&&) per creare blocchi condizionali composti da più condizioni:

// creo un oggetto data
var saluto = new Date();

// individuo l'ora corrente
var oo = saluto.getHours();

if (oo > 06 && oo <= 12) {
  document.write("Buon giorno!");
}
else if (oo > 12 && oo <= 18) {
  document.write("Buon pomeriggio!");
}
else if (oo > 18 && oo <= 22) {
  document.write("Buona sera!");
}
else {
  document.write("Buona notte!");
}

Anche qui come l’esempio precedente utilizziamo una struttura condizionale a più blocchi in modo da far apparire a schermo un messaggio differente a seconda dell’orario attuale di sistema.

Creazione di condizioni complesse

Quando si concatenano due o più condizioni è necessario stare molto attenti all’uso delle parentesi tonde, mentre se si concatenano diverse condizioni sempre col medesimo operatore l’uso di parentesi tonde non è necessario:

if (a == true && b == true && c == true) { ... }

In questo caso il blocco if si realizzerà se tutte e tre le condizioni sono vere.

Altrimenti l’uso delle parentesi diventa indispensabile, se si costruiscono condizioni complesse utilizzando una pluralità di operatori logici:

if ((a == true && b == true) || c == true) { ... }

In quest’ultimo esempio il blocco if si realizzerà solo se “a” e “b” sono true, oppure se è true solo la variabile “c”.

E con quest’ultimo accorgimento direi che finisce qui un’altra lezione sulla programmazione JavaScript, vi invito a mettere un mi piace all’articolo se è stato di vostro gradimento e per qualsiasi chiarimento ormai sapete a quale contatto trovarmi. Spero come sempre di essere stato più chiaro possibile e di esservi stato di aiuto anche con questa lezione, detto ciò vi lascio qui e vi auguro un buon proseguimento, noi ci rivediamo al prossimo articolo, ciao! 😉

The following two tabs change content below.
Raffaele Tufano
Per avere ulteriori infomazioni riguardo l' utente, si prega di visitare la seguente pagina
Condividi

Copyright © 2016. All Rights Reserved.

Raffaele Tufano

About Raffaele Tufano

Per avere ulteriori infomazioni riguardo l' utente, si prega di visitare la seguente pagina

Lascia un commento