Gli operatori di confronto in JavaScript: guida completa con esempi


Quando scriviamo codice in JavaScript, uno degli strumenti fondamentali che utilizziamo per prendere decisioni sono gli operatori di confronto.

Servono a confrontare due valori e restituiscono sempre un risultato booleano:

true
false

Sono alla base di strutture come if, while, for e di molte logiche applicative.


Operatori di uguaglianza

== (uguaglianza debole)

Confronta due valori facendo conversione di tipo automatica (type coercion).

5 == "5"     // true

JavaScript converte la stringa "5" in numero prima di confrontarla.

⚠️ Può portare a risultati inaspettati:

0 == false   // true
"" == false  // true

=== (uguaglianza stretta)

Confronta valore e tipo, senza conversioni automatiche.

5 === "5"    // false
5 === 5      // true

È l’operatore consigliato nella maggior parte dei casi.


!= e !==

Sono le versioni di disuguaglianza:

5 != "5"     // false
5 !== "5"    // true

Anche qui, !== è preferibile perché non fa conversioni implicite.


Operatori di confronto numerico

Questi operatori confrontano valori numerici (o valori convertibili in numeri).

> maggiore di

< minore di

>= maggiore o uguale

<= minore o uguale

Esempi:

10 > 5       // true
3 < 1        // false
5 >= 5       // true
4 <= 2       // false

Attenzione alle stringhe!

Se confronti stringhe, JavaScript usa l’ordine lessicografico (alfabetico basato su Unicode).

"b" > "a"        // true
"10" > "2"       // false

Perché?

Perché confronta carattere per carattere:

  • "1" viene prima di "2"

Esempi pratici in un if

let eta = 18;

if (eta >= 18) {
  console.log("Sei maggiorenne");
}

Confronto con uguaglianza stretta:

let ruolo = "admin";

if (ruolo === "admin") {
  console.log("Accesso completo");
}

Confronti con valori speciali

null e undefined

null == undefined     // true
null === undefined    // false

Questo è un caso particolare della coercizione.


NaN (Not a Number)

NaN è un valore speciale in JavaScript.

NaN == NaN     // false
NaN === NaN    // false

Per verificare se un valore è NaN bisogna usare:

Number.isNaN(valore)

Buone pratiche

✅ Preferisci sempre:

❌ Evita:

a meno che tu non sappia esattamente cosa stai facendo.


Tabella riassuntiva

Operatore Descrizione Converte il tipo?
== Uguaglianza debole ✅ Sì
=== Uguaglianza stretta ❌ No
!= Disuguaglianza debole ✅ Sì
!== Disuguaglianza stretta ❌ No
> < >= <= Confronto numerico Dipende dal contesto

Conclusione

Gli operatori di confronto in JavaScript sono semplici da usare, ma possono diventare insidiosi a causa della conversione automatica dei tipi.

🎯 Regola d’oro:

Usa sempre === e !== per evitare comportamenti imprevisti.

Capire bene questi operatori ti aiuterà a scrivere codice più sicuro, leggibile e professionale.


Perfetto! Ecco una sezione di esercizi pronti per il blog, divisi per livello di difficoltà, con soluzioni alla fine (così puoi usarli anche come quiz).


Cosa restituisce il seguente codice?

5 == "5"

Qual è il risultato?

5 === "5"

Cosa stampa?

console.log(10 > 8);

Il seguente confronto è vero o falso?

"3" > 2

Cosa restituisce?

null === undefined

Qual è il risultato?

0 == false

E questo?

0 === false

Cosa restituisce?

"" == false

Qual è il risultato?

"10" > "2"

Cosa stampa questo codice?

let eta = "18";

if (eta === 18) {
  console.log("Maggiorenne");
} else {
  console.log("Non maggiorenne");
}

Cosa restituisce?

NaN === NaN

Qual è il risultato?

null == 0

Cosa stampa?

let valore = undefined;

if (valore == null) {
  console.log("È null o undefined");
}

Qual è il risultato?

[1,2] == "1,2"

Cosa restituisce?

true == "1"

1️⃣ true
2️⃣ false
3️⃣ true
4️⃣ true → la stringa “3” viene convertita in numero
5️⃣ false

6️⃣ true → coercizione di tipo
7️⃣ false → tipi diversi
8️⃣ true → stringa vuota diventa false
9️⃣ false → confronto lessicografico
🔟 “Non maggiorenne” → tipi diversi

1️⃣1️⃣ false → NaN non è mai uguale a se stesso
1️⃣2️⃣ false
1️⃣3️⃣ Stampa “È null o undefined”
1️⃣4️⃣ true → l’array viene convertito in stringa "1,2"
1️⃣5️⃣ true → la stringa viene convertita in numero

Continuare la lettura sul sito di origine:

https://www.codingcreativo.it/gli-operatori-di-confronto-in-javascript-guida-completa-con-esempi/

Articoli Correlati

Commenti

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Vuoi rimanere aggiornato sulle nuove tecnologie per la Didattica e ricevere suggerimenti per attività da fare in classe?

Sei un docente?

soloscuola.it la prima piattaforma
No Profit gestita dai

Volontari Per la Didattica
per il mondo della Scuola. 

 

Tutti i servizi sono gratuiti. 

Associazione di Volontariato Koinokalo Aps

Ente del Terzo Settore iscritta dal 2014
Tutte le attività sono finanziate con il 5X1000