Truthy
In JavaScript, a truthy value is a value that is considered true
when encountered in a Boolean context. All values are truthy unless they are defined as falsy. That is, all values are truthy except false
, 0
, -0
, 0n
, ""
, null
, undefined
, and NaN
.
JavaScript uses type coercion in Boolean contexts.
Examples of truthy values in JavaScript (which will be coerced to true
in boolean contexts, and thus execute the if
block):
js
if (true)
if ({})
if ([])
if (42)
if ("0")
if ("false")
if (new Date())
if (-42)
if (12n)
if (3.14)
if (-3.14)
if (Infinity)
if (-Infinity)
The logical AND operator, &&
If the first operand is truthy, the logical AND operator returns the second operand:
js
true && "dog"
// returns "dog"
[] && "dog"
// returns "dog"