`truthy` och `falsy` i JavaScript
Den här artikeln förklarar truthy
och falsy
i JavaScript.
YouTube Video
truthy
och falsy
i JavaScript
Koncepten truthy
och falsy
i JavaScript spelar en mycket viktig roll, särskilt vid utvärdering av villkorssatser. Truthy
och falsy
avgör om ett värde utvärderas som sant (true
) eller falskt (false
), men dessa värden är inte nödvändigtvis de booleska värdena true
eller false
i sig.
Falsy
-värden
Falsy
-värden hänvisar till värden som utvärderas som false
i JavaScript-villkor. Nedan är en lista över falsy
-värden i 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}
I det här exemplet kommer alla falsy
-värden att skrivas ut som "falsy". Nedan är en lista över falsy
-värden i JavaScript.
false
—false
i Booleansk typ0
— Siffran noll (decimal0.0
är ocksåfalsy
)-0
— Negativ noll (tekniskt sett skild från0
, men fortfarandefalsy
)0n
— Noll i BigInt-typ""
— En tom sträng av längd 0null
— Inget värde finnsundefined
— Odefinierat värdeNaN
— Inte ett nummer
Dessa värden behandlas som false
i logiska operationer och villkorssatser (som if
-satser).
Truthy
-värden
Alla värden som inte är falsy
är truthy
. Detta hänvisar till värden som utvärderas som booleska true
. I JavaScript behandlas många värden som 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}
I denna kod visas truthy
värden som "truthy". Till exempel är följande värden truthy
.
true
—true
i Booleansk typ- Tal (förutom 0) — Till exempel är
1
och-1
ocksåtruthy
. - Strängar (icke-tomma) — till exempel,
"Hello"
eller" "
(även strängar som enbart innehåller mellanslag ärtruthy
) - Objekt — Även tomma objekt (
{}
) och arrayer ([]
) ärtruthy
. - Funktioner — Funktioner i sig är också
truthy
. Symbol
— Värden av typenSymbol
är ocksåtruthy
.Infinity
— Både positiv och negativ oändlighet ärtruthy
.
Användningsområden för truthy
och falsy
Begreppen truthy
och falsy
används ofta i villkorssatser och logiska operationer. Till exempel, när man sätter ett standardvärde med hjälp av operatören ||
(logiskt ELLER), returneras det första truthy
värdet som resultat.
Hur man kontrollerar falsy
värden
För att kontrollera falsy
värden är det bekvämt att använda Boolean
-funktionen. Boolean
-funktionen konverterar explicit ett givet värde till en boolesk typ.
Exempel på Boolean
-funktionen
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}
Slutsats
Truthy
och falsy
i JavaScript är viktiga för att förstå hur icke-booleska värden utvärderas i villkorssatser. Falsy
värden inkluderar false
, 0
, en tom sträng, null
, undefined
och NaN
, medan alla andra värden utvärderas som truthy
. Att förstå dessa koncept möjliggör att skriva mer flexibel och effektiv kod.
Du kan följa med i artikeln ovan med hjälp av Visual Studio Code på vår YouTube-kanal. Vänligen kolla även in YouTube-kanalen.