Can someone please explain JavaScript Truthy and Falsy, using the below sample data. I have read other threads but still confused.
var a = 0;
var a = 10 ==
From my understanding, I believe that var a = 1; is the only truthy and the rest are falsy’s - is this correct?
No.
var a = 0;
Number zero is falsy. However, note that the string zero "0"
is truthy.
var a = 10 == 5;
This is same as var a = (10 == 5);
, so this is falsy.
var a = 1;
var a = -1;
Any non-zero number including negative numbers is truthy.
Quoting from MDN
In JavaScript, a truthy value is a value that translates to true when evaluated in a Boolean context. All values are truthy unless they are defined as falsy (i.e., except for
false
,0
,""
,null
,undefined
, andNaN
).
List of falsy values in JavaScript:From MDN
false
null
undefined
0
NaN
''
, ""
, ``
(Empty template string)document.all
0n
: BigInt-0