Java Script: operatori logici e di confronto

Operatori di confronto

Qualsiasi consultazione in internet estrapolerebbe se interrogata sugli operatori di confronto un materiale analogo a quello sotto riportato, in particolare qui attingiamo a MR.Webmaster riconoscendo l’importante qualità formativa del portale. Questi operatori possono agire su diversi tipi di variabili (stringa, numerica, booleana, ecc.) e sono utilizzati per effettuare, appunto, dei confronti. L’esito del confronto genera un valore booleano (TRUE o FALSE).

== Uguaglianza
!= Diversità
< Minore
<= Minore o uguale
> Maggiore
>= Maggiore o uguale

Questo tipo di operatori assume un’importanza centrale all’interno delle strutture di controllo (o strutture condizionali) quando, cioè, l’esito del confronto tra due o più variabili diventa determinante al fine del comportamento del programma stesso.

Vediamo qualche esempio di utilizzo degli operatori di confronto:

var a = 12;
var b = 5;

if (a == b) { … } // il controllo restituisce FALSE
if (a != b) { … } // il controllo restituisce TRUE
if (a < b) { … } // il controllo restituisce FALSE
if (a > b) { … } // il controllo restituisce TRUE

Esistono poi degli operatori chiamati logici che permettono di comporre più espressioni logiche elementari per scriverne di complesse. Per esempio per esprimere il confronto 5 é maggiore di 4 e 3 é maggiore di 1 si usa l’operatore &&: alert(5>4 && 3>1); si noti che la frase é vera solo quando entrambe le condizioni lo sono.

Operatori logici

Un altra serie molto importante di operatori è costituita da quella simbologia che consente di effettuare operazioni logiche di associazione (AND), alternanza (OR) e negazione (NOT). Anche questi operatori sono utilizzati nelle strutture di controllo del flusso di programma.

&& – L’operatore “AND” è utilizzato per creare condizioni complesse composte da una pluralità di sotto-condizioni; affinché la routine si verifichi è necessario che tutte le sotto-condizioni siano vere.
|| – L’operatore “OR” è utilizzato per creare condizioni complesse composte da una pluralità di sotto-condizioni; affinché la routine si verifichi è necessario che almeno una delle sotto-condizioni sia vera.
! – L’operatore “NOT” indica una negazione all’interno di una routine. In sostanza si usa per invertire il significato di una condizione.

Vediamo qualche esempio:

var a = 10;
var b = 3;
var c = 9;
var d = 24;

if (a == b && c < d) { … } // il controllo restituisce FALSE
if (a != b && c < d) { … } // il controllo restituisce TRUE
if (a > b || c == d) { … } // il controllo restituisce TRUE
if (!(a > b)) { … } // il controllo restituisce FALSE

Gli operatori booleani hanno il seguente ordine di precedenza prima si applicano i NOT poi eventuali AND e infine gli OR. Una espressione viene valutata fin quando si é certi del risultato dell’ operazione, per esempio se valutando l'(espressione 1 && espressione 2) l’interprete verifica che espressione 1 vale FALSE non serve che valuti espressione 2 perché si sa già che il risultato sarebbe in ogni caso FALSE.

AND LOGICO &&

primo argomento false , secondo argomento false , risultato finale false
primo argomento false secondo argomento true risultato false
primo argomento true, secondo argomento false risultato false
primo argomento vero secondo argomento vero risultato vero

Sostanzialmente le espressioni di confronto per rientrare nel vero in questa categoria devono essere risolte in entrambi i casi con vero, mentre per l’ OR || OPPURE é l’esatto opposto perché verifica solo che entrambi le espressioni non rientrino nel casi espressione 1 false ed espressione 2 false che genera un false mentre tutte le altre combinazioni danno vero (true true genera true, false e true generano true e true e false generano true).

 

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...