Operatori aritmetici
Gli operatori aritmetici in JavaScript permettono di eseguire calcoli matematici su numeri e valori numerici. Sono fondamentali in qualsiasi applicazione: dal semplice contatore fino a logiche complesse di calcolo, validazione e animazione.
In JavaScript gli operatori aritmetici lavorano principalmente con il tipo number, ma possono comportarsi in modo diverso quando coinvolgono stringhe o altri tipi.
Elenco degli operatori aritmetici
| Operatore | Nome | Esempio | Risultato |
|---|---|---|---|
+ | Addizione | 5 + 2 | 7 |
- | Sottrazione | 5 - 2 | 3 |
* | Moltiplicazione | 5 * 2 | 10 |
/ | Divisione | 5 / 2 | 2.5 |
% | Modulo (resto) | 5 % 2 | 1 |
** | Esponenziazione | 5 ** 2 | 25 |
++ | Incremento | x++ | x + 1 |
-- | Decremento | x-- | x - 1 |
Addizione (+)
let a = 10;
let b = 5;
let risultato = a + b; // 15In JavaScript + è anche l’operatore di concatenazione per le stringhe:
"5" + 2; // "52"
5 + "2"; // "52"Quando uno dei due operandi è una stringa, JavaScript converte l’altro in stringa.
Sottrazione (-)
10 - 3; // 7Converte automaticamente le stringhe numeriche in numeri:
"10" - 3; // 7Moltiplicazione (*)
4 * 5; // 20Anche qui JavaScript converte le stringhe numeriche:
"4" * "2"; // 8Divisione (/)
10 / 4; // 2.5Casi particolari:
10 / 0 - // Infinity
10 / 0; // -Infinity
0 / 0; // NaNModulo (%)
Restituisce il resto della divisione.
10 % 3; // 1Utile per:
- verificare numeri pari/dispari
- cicli ripetitivi
- gestione di indici
10 % 2 === 0; // true → numero pariEsponenziazione (**)
Eleva un numero a potenza.
2 ** 3; // 8
5 ** 2; // 25Equivale a:
Math.pow(2, 3);Incremento (++) e Decremento (--)
Post-incremento
let x = 5;
x++; // x diventa 6Pre-incremento
let x = 5;
++x; // x diventa 6La differenza:
let x = 5;
let y = x++; // y = 5, x = 6
let a = 5;
let b = ++a; // b = 6, a = 6Stesso concetto per --.
Conversioni automatiche (type coercion)
JavaScript tenta di convertire i valori:
"10" * 2; // 20
"10" - 2; // 8
"10" / 2; // 5Ma con + avviene la concatenazione:
"10" + 2; // "102"Per evitare errori, è buona pratica convertire esplicitamente:
Number("10") + 2; // 12Valori speciali: NaN e Infinity
| Valore | Significato |
|---|---|
NaN | Risultato non numerico |
Infinity | Numero troppo grande |
-Infinity | Numero troppo piccolo |
"ciao" * 3; // NaNBuone pratiche
- Converti sempre le stringhe in numeri prima di fare calcoli.
- Usa
Number()oparseInt()/parseFloat(). - Attenzione a
+con stringhe. - Evita divisioni per zero.
- Controlla sempre i risultati con
isNaN()quando lavori con input esterni.
Gli operatori aritmetici sono alla base di qualsiasi logica di calcolo in JavaScript. Una loro corretta comprensione permette di evitare bug, errori di conversione e comportamenti inattesi nel codice.