Gli operatori logici servono a combinare valori booleani (true o false) e a costruire espressioni più complesse. Anche senza if, possiamo usarli per calcoli logici, assegnazioni e verifiche dirette.

Gli operatori logici ci permettono di combinare più condizioni.

Operatore AND (&&)

  • Restituisce true solo se entrambe le condizioni sono vere.
  • Può essere usato in espressioni senza if.
let a = true;
let b = false;let risultato = a && b;console.log(risultato); // false

Esempio pratico:

let isAdult = true;
let hasTicket = true;
let canEnter = isAdult && hasTicket;
console.log(canEnter); // true

Operatore OR (||)

  • Restituisce true se almeno una condizione è vera.
let x = false;
let y = true;
let risultato = x || y;
console.log(risultato); // true

Esempio pratico:

Pubblicità
let weekend = true;
let holiday = false;
let freeDay = weekend || holiday;
console.log(freeDay); // true

Operatore NOT (!)

  • Negazione: true diventa false e false diventa true.
let luceAccesa = true;
let luceSpenta = !luceAccesa;
console.log(luceSpenta); // false

Esempio pratico:

let online = false;
let offline = !online;
console.log(offline); // true

Combinazioni di operatori logici

Gli operatori possono essere combinati per creare espressioni più complesse:

let a = true;
let b = false;
let c = true;
let risultato = (a && b) || c;
console.log(risultato); // true

Spiegazione:

  1. (a && b)true && falsefalse
  2. false || cfalse || truetrue

Truthy e Falsy

In JavaScript, qualunque valore può comportarsi come booleano:

Pubblicità
  • Falsy (considerati false in una valutazione logica): 0, "", null, undefined, NaN, false
  • Tutto il resto è truthy (considerato true)
console.log(Boolean(0));       // false
console.log(Boolean("ciao")); // true
console.log(Boolean(null)); // false
console.log(Boolean(123)); // true

Uso degli operatori logici nelle assegnazioni

Gli operatori possono essere usati direttamente per calcolare valori booleani senza if:

let hasAccess = true;
let isAdmin = false;
let accessLevel = hasAccess && isAdmin;
console.log(accessLevel); // false
let username = "";
let defaultName = "Guest";
let nameToShow = username || defaultName;
console.log(nameToShow); // "Guest"
  • Con ||, se il primo valore è falsy, viene usato il secondo.

8️⃣ Sintesi degli operatori

OperatoreSignificatoEsempioRisultato
&&AND – entrambe veretrue && falsefalse
``OR – almeno una vera
!NOT – nega il valore!truefalse

🔹 Conclusione

Gli operatori logici in JavaScript ci permettono di combinare e manipolare valori booleani senza bisogno di istruzioni condizionali.
Sono utili per:

  • Calcoli logici complessi
  • Assegnazioni condizionali
  • Verifiche di stato in variabili