Skip to Content
Le documentazioni sono in costruzione, puoi utilizzare la navigazione sulla sinistra come roadmap per monitorare i tuoi progressi. Grazie!
06 OperatoriOperatori ternari

Operatori ternari

L’operatore ternario è l’unico operatore condizionale di JavaScript ed è una forma compatta dell’istruzione if...else. Viene spesso utilizzato per assegnare valori o restituire risultati diversi in base a una condizione, mantenendo il codice più conciso.


Sintassi

condizione ? valoreSeVero : valoreSeFalso;
  • condizione → un’espressione che viene valutata come true o false
  • valoreSeVero → restituito se la condizione è vera
  • valoreSeFalso → restituito se la condizione è falsa

Esempio base

let eta = 18; let messaggio = eta >= 18 ? "Maggiorenne" : "Minorenne"; console.log(messaggio); // "Maggiorenne"

È equivalente a:

let messaggio; if (eta >= 18) { messaggio = "Maggiorenne"; } else { messaggio = "Minorenne"; }

Uso per assegnazioni

let saldo = 50; let stato = saldo > 0 ? "Credito disponibile" : "Saldo insufficiente";

Uso come valore di ritorno

function controllaNumero(n) { return n % 2 === 0 ? "Pari" : "Dispari"; }

Ternari concatenati (annidati)

È possibile usare più operatori ternari insieme, ma è importante mantenere il codice leggibile.

let voto = 8; let giudizio = voto >= 9 ? "Ottimo" : voto >= 7 ? "Buono" : voto >= 6 ? "Sufficiente" : "Insufficiente";

Uso nelle espressioni

let sconto = isVip ? prezzo * 0.8 : prezzo * 0.95;

Ternario con valori booleani

let attivo = true; let stato = attivo ? true : false;

Questo esempio è ridondante e può essere semplificato:

let stato = attivo;

Ternario con espressioni complesse

let risultato = a > b && c > d ? "Condizione vera" : "Condizione falsa";

Ternario come alternativa compatta a if...else

let accesso = loggedIn ? "Accesso consentito" : "Accesso negato";

Buone pratiche

  • Usare il ternario solo per condizioni semplici
  • Evitare annidamenti troppo profondi
  • Preferire if...else se la logica è complessa
  • Usarlo per assegnazioni, ritorni rapidi e UI logic

Errori comuni

Dimenticare i due punti :

// ❌ Errore condizione ? valore1 valore2

Usare istruzioni invece di espressioni

// ❌ Non valido condizione ? console.log("Sì") : if (x) {}

Conclusione

L’operatore ternario è uno strumento potente per scrivere codice più compatto e leggibile, se usato con criterio. È ideale per condizioni semplici, assegnazioni rapide e logica inline, ma non deve sostituire completamente le strutture di controllo tradizionali.

Aggiornato il