`truthy` e `falsy` in JavaScript
Questo articolo spiega truthy
e falsy
in JavaScript.
YouTube Video
truthy
e falsy
in JavaScript
I concetti di truthy
e falsy
in JavaScript svolgono un ruolo molto importante, soprattutto nella valutazione delle istruzioni condizionali. Truthy
e falsy
determinano se un valore viene valutato come vero (true
) o falso (false
), ma questi valori non sono necessariamente il booleano true
o false
in sé.
Valori Falsy
I valori Falsy
si riferiscono a valori che vengono valutati come false
nelle condizioni di JavaScript. Di seguito è riportato un elenco di valori falsy
in JavaScript.
1const values = [
2 false,
3 0,
4 -0,
5 0.0,
6 -0.0,
7 0n,
8 -0n,
9 "",
10 null,
11 undefined,
12 NaN
13];
14
15for (let value of values) {
16 if (value) {
17 console.log(`${value} is truthy`);
18 } else {
19 console.log(`${value} is falsy`);
20 }
21}
In questo esempio, tutti i valori falsy
verranno stampati come "falsy". Di seguito è riportato un elenco di valori falsy
in JavaScript.
false
—false
nel tipo Booleano0
— Il numero zero (anche il decimale0.0
èfalsy
)-0
— Zero negativo (tecnicamente distinto da0
, ma comunquefalsy
)0n
— Zero nel tipo BigInt""
— Una stringa vuota di lunghezza 0null
— Nessun valore presenteundefined
— Valore non definitoNaN
— Non è un numero
Questi valori vengono trattati come false
nelle operazioni logiche e nelle istruzioni condizionali (come le istruzioni if
).
Valori Truthy
Tutti i valori che non sono falsy
sono truthy
. Questo si riferisce a valori che vengono valutati come booleani true
. In JavaScript, molti valori vengono trattati come truthy
.
1const values = [
2 true,
3 1,
4 -1,
5 "Hello",
6 " ",
7 [],
8 {},
9 function() {},
10 Symbol(),
11 Infinity
12];
13
14for (let value of values) {
15 if (value) {
16 console.log(value, ' is truthy');
17 } else {
18 console.log(value, ' is falsy');
19 }
20}
In questo codice, i valori truthy
vengono mostrati come "truthy". Ad esempio, i seguenti valori sono truthy
.
true
—true
nel tipo Booleano- Numeri (diversi da 0) — Ad esempio,
1
e-1
sono anchetruthy
. - Stringhe (non vuote) — ad esempio,
"Ciao"
o" "
(anche le stringhe contenenti solo spazi sonotruthy
) - Oggetti — Anche oggetti vuoti (
{}
) e array ([]
) sonotruthy
. - Funzioni — Anche le funzioni stesse sono
truthy
. Symbol
— I valori di tipoSymbol
sono anch'essitruthy
.Infinity
— Sia l'infinito positivo che negativo sonotruthy
.
Applicazioni di truthy
e falsy
I concetti di truthy
e falsy
vengono spesso utilizzati nei costrutti condizionali e nelle operazioni logiche. Ad esempio, quando si imposta un valore di default utilizzando l'operatore ||
(OR logico), il primo valore truthy
viene restituito come risultato.
Come verificare i valori falsy
Per verificare i valori falsy
, è comodo utilizzare la funzione Boolean
. La funzione Boolean
converte esplicitamente un valore dato in un tipo booleano.
Esempi della funzione Boolean
1const values = [
2 false,
3 0,
4 "",
5 null,
6 undefined,
7 NaN
8];
9
10for (let value of values) {
11 console.log(`${value} is ${Boolean(value) ? 'truthy' : 'falsy'}`);
12}
Conclusione
Truthy
e falsy
in JavaScript sono importanti per comprendere come i valori non booleani vengano valutati nelle espressioni condizionali. I valori falsy
includono false
, 0
, una stringa vuota, null
, undefined
e NaN
, mentre tutti gli altri valori vengono considerati truthy
. Comprendere questi concetti consente di scrivere codice più flessibile ed efficiente.
Puoi seguire l'articolo sopra utilizzando Visual Studio Code sul nostro canale YouTube. Controlla anche il nostro canale YouTube.