Gli operatori si dividono in:
1. operatori aritmetici
2. operatori di assegnamento
3. operatori relazionali
4. operatori logici
5. operatori sui bit (utilizzati di solito solo per generare colori)
6. operatori su stringhe
Gli operatori possono essere unari o binari: i primi richiedono un solo operando, i secondi due.
L’operatore che abbiano sinora incontrato è quello di assegnamento: consente di memorizzare un valore in una variabile (è indicato con il simbolo “=”).
Di seguito elenchiamo i principali operatori che JavaScript mette a disposizione del programmatore citando, per ognuno di essi, un esempio, utile per comprendere quali valori vengono restituiti in ciascun caso.
Operatori aritmetici
Operatore |
Descrizione |
Esempio |
Risultato |
+ |
Addizione |
x=2x+2 |
4 |
- |
Sottrazione |
x=25-x |
3 |
* |
Moltiplicazione |
x=4x*5 |
20 |
/ |
Divisione |
15/55/2 |
32.5 |
% |
Modulo (resto di una divisione) |
5%2
10%8
10%2 |
1
2
0 |
++ |
Incremento (operatore unario) |
x=5
x++ |
x=6 |
-- |
Decremento (operatore unario) |
x=5
x-- |
x=4 |
Operatori di assegnamento
Operatore |
Esempio |
Equivale a (stessa semantica) |
= |
x=y |
x=y |
+= |
x+=y |
x=x+y |
-= |
x-=y |
x=x-y |
*= |
x*=y |
x=x*y |
/= |
x/=y |
x=x/y |
%= |
x%=y |
x=x%y |
Com’è facile notare, un’operazione di assegnamento può essere scritta in forma compatta (cioè abbinata ad un operatore aritmetico). L’operatore “+=” , per esempio, somma i valori delle due variabili indicate e memorizza il risultato all’interno della variabile di sinistra. Nella colonna “equivale a” potete verificare come si sarebbe potuta scrivere, in alternativa, ogni singola operazione senza ricorrere alla forma compatta.
Operatori relazionali
Operatore |
Descrizione |
Esempio |
== |
è uguale a |
5==8 restituisce “false” |
!= |
non è uguale a |
5!=8 restituisce “true” |
> |
è maggiore di |
5>8 restituisce “false” |
< |
è minore di |
5<8 restituisce “true” |
>= |
è maggiore o uguale a |
5>=8 restituisce “false” |
<= |
è minore o uguale a |
5<=8 restituisce “true” |
Gli operatori relazioni si basano sul concetto di “verità” e “falsità”: consentono di mettere in relazione un valore (o una variabile) rispetto ad un altro. Il doppio uguale (==) permette, ad esempio, di verificare se un valore è uguale ad un altro (nel caso delle variabili, se esse ospitano lo stesso contenuto). I valori possibili che vengono restituiti dopo il confronto sono false (falso) oppure true (vero). Se avessimo inizializzato in precedenza due variabili x e y, ponendo la prima uguale a 5 (x=5), la seconda uguale a 8 (x=8), un confronto x==y restituirebbe false (non è vero che il contenuto della variabile x è uguale al contenuto della variabile y). Gli operatori relazioni sono tutti binari.
Operatori logici
Operatore |
Descrizione |
Esempio |
&& |
and |
x=6
y=3
(x < 10 && y > 1) restituisce “true” |
|| |
or |
x=6
y=3 (x==5 || y==5) restituisce “false” |
! |
not |
x=6
y=3
x != y Restituisce “true” |
Gli operatori logici sono essenziali per effettuare confronti più complessi tra valori e/o variabili. Sono ampiamente utilizzati nelle strutture decisionali (if…then…else). Nel primo esempio si suppone che la variabile x contenga il valore 6, y il valore 3 (siano state effettuate le relative operazioni di assegnamento). L’espressione (x<10 && y>1) restituisce il valore true perché sono vere entrambe le condizioni indicate (è vero, cioè, che x sia minore di 10 ed è altrettanto vero che y sia maggiore di 1).
Operatori su stringhe
Per quanto riguarda gli operatori su stringhe, abbiamo già avuto modo di presentare, in precedenza, il “+”, utilizzato per concatenare assieme due o più stringhe.
Lo script seguente, ad esempio, assegna alla variabile testo3 la stringa “Benvenuti al corsodi PC Open”:
testo1=”Benvenuti al corso”
testo2=”di PC Open”
testo3=testo1+testo2
Per aggiungere uno spazio tra le due variabili stringa le soluzioni possibili sono due. La prima consiste nell’inserire una stringa “spazio” nell’ultima istruzione:
testo1=”Benvenuti al corso”
testo2=”di PC Open”
testo3=testo1+" "+testo2
In alternativa, come seconda soluzione, si può aggiungere uno spazio in calce alla stringa testo1 oppure in testa alla stringa testo2:
testo1=”Benvenuti al corso ”
testo2=”di PC Open”
testo3=testo1+" "+testo2
In questo modo, la variabile testo3 contiene la stringa “Benvenuti al corso di PC Open”.
|