edubun
Italiano

Valori e console.log

console.log(2 + 3) stampa 5, ma console.log("2 + 3") stampa 2 + 3: sono le virgolette a decidere se JavaScript calcola o copia.

Tutto ciò con cui lavora un programma è un valore

Un programma sposta dati: prezzi, nomi, punteggi, risposte a domande sì o no. Ogni singolo dato è un valore. Il numero 42 è un valore, il testo "Seoul" è un valore, e lo è anche la risposta true. Ogni valore ha un tipo, che dice a JavaScript che genere di cosa è e che cosa ci puoi fare. Puoi moltiplicare due numeri, ma moltiplicare due nomi non ha senso, quindi JavaScript deve sapere quale è quale.

I tipi di base

TipoEsempiServe per
number42, 3.5, -7Contare, misurare, denaro
string"cat", 'Hello', "42"Testo di qualsiasi genere
booleantrue, falseRisposte sì o no
undefinedundefinedUn valore che non è ancora stato impostato
nullnullVuoto di proposito

JavaScript ha un solo tipo numerico, sia per i numeri interi sia per i decimali, quindi 7 e 7.5 sono entrambi numeri. Una stringa è una sequenza di caratteri scritta tra virgolette; vanno bene sia le virgolette singole sia le doppie, purché i due estremi siano uguali. Un booleano ha solo due valori possibili, true e false, scritti senza virgolette. Gli ultimi due, undefined e null, significano entrambi «qui non c'è niente», e li incontrerai di nuovo quando a una variabile non è stato dato un valore. Lo standard ECMAScript definisce anche BigInt e Symbol, che in questo corso non servono.

Le virgolette cambiano il tipo

Il valore 42 e il valore "42" sembrano uguali quando vengono stampati, ma sono di tipo diverso. Il primo è un numero con cui puoi fare calcoli. Il secondo è una stringa fatta dei caratteri 4 e 2. L'operatore typeof ti dice il tipo di qualsiasi valore, ed è un modo rapido per controllare che cosa hai in mano:

console.log(typeof 42);       // number
console.log(typeof "42");     // string
console.log(typeof true);     // boolean
console.log(typeof "true");   // string

Lo stesso succede con i calcoli. Senza virgolette, JavaScript calcola prima l'espressione e stampa il risultato. Con le virgolette, i caratteri sono testo e vengono stampati esattamente come sono scritti:

console.log(2 + 3);     // 5
console.log("2 + 3");   // 2 + 3

Un pezzo di codice che produce un valore, come 2 + 3 o typeof 42, si chiama espressione. Ogni volta che JavaScript incontra un'espressione la valuta, cioè la riduce a un solo valore, e poi usa quel valore. In console.log(2 + 3) l'espressione viene valutata come 5 prima ancora che console.log la veda.

Stampare più valori insieme

console.log accetta più di un valore. Separali con virgole e vengono stampati su una riga, con uno spazio tra uno e l'altro:

console.log("Age:", 30);              // Age: 30
console.log("Sum:", 4 + 5, "units");  // Sum: 9 units

È il modo più semplice per etichettare l'output mentre lavori. Stampare valori con un'etichetta, come "Sum:" qui sopra, è il modo in cui i programmatori controllano che cosa fa un programma a ogni passo. Quando qualcosa si comporta in modo strano, la prima mossa abituale è aggiungere un console.log e guardare.

Esempi svolti

Esempio 1. console.log(10 - 4) stampa 6, perché l'espressione viene valutata prima. Esempio 2. console.log("10 - 4") stampa 10 - 4, perché è una stringa. Esempio 3. console.log(typeof "") stampa string: due virgolette senza niente in mezzo formano comunque una stringa, chiamata stringa vuota. Esempio 4. console.log(typeof 3.0) stampa number; non esiste un tipo separato per i decimali.

valoreUn singolo dato: 42, "cat", true
tipoIl genere di valore: number, string, boolean e così via
numberNumeri interi e decimali, un solo tipo per entrambi
stringTesto scritto tra virgolette
booleantrue o false, scritto senza virgolette
espressioneCodice che produce un valore, come 2 + 3
typeofDà il tipo di un valore sotto forma di stringa
stringa vuotaUna stringa senza caratteri, scritta ""
  1. Che cosa stampa?
    console.log(6 * 7);
  2. Che cosa stampa?
    console.log("6 * 7");
    • 42
    • 6 * 7
    • "6 * 7"
  3. Che cosa stampa?
    console.log(typeof 7.5);
  4. Che cosa stampa?
    console.log(typeof "7.5");
  5. Che cosa stampa?
    console.log(typeof false);
  6. Che cosa stampa?
    console.log("Total:", 3 + 4);
    • Total: 7
    • Total:7
    • Total: 3 + 4
  7. Quale di questi è un valore booleano?
    • "true"
    • true
    • 1
  8. Che cosa stampa?
    console.log(typeof "");
  9. Che cosa stampa?
    console.log(10 - 4, "10 - 4");
    • 6 6
    • 6 10 - 4
    • 10 - 4 10 - 4
  10. Quale di queste è una stringa valida?
    • "hello'
    • 'hello'
    • hello
Punti chiave
  • Ogni dato è un valore, e ogni valore ha un tipo.
  • Tipi di base: number, string, boolean, undefined, null.
  • Le virgolette creano una stringa; senza virgolette JavaScript valuta l'espressione.
  • typeof ti dice il tipo.
  • console.log(a, b) stampa entrambi i valori sulla stessa riga, separati da uno spazio.
Fonti di questo corso (2)
  • MDN Web Docs, JavaScript Guide (developer.mozilla.org/en-US/docs/Web/JavaScript/Guide, chapters Introduction, Grammar and types, Control flow, Loops and iteration, Functions, Expressions and operators, Numbers and strings, Indexed collections, Working with objects; checked 2026-10-17)
  • Ecma International, ECMA-262 ECMAScript 2026 Language Specification, 17th edition, June 2026 (tc39.es/ecma262 and ecma-international.org/publications-and-standards/standards/ecma-262, checked 2026-10-17)

Consultato il: 2026-10-17