Truthy and Falsy Values in Javascript
📣 Sponsor
In Javascript, things can be true
, or false
, but they can also be truthy
or falsy
. The concept of truthy
and falsy
are usually considered only in a boolean context, such as in an if..else
statement, but they also affect other parts of Javascript - for example, what is returned from the logical OR operator.
What does truthy and falsy mean in Javascript?
Something is considered falsy
in Javascript if it can be converted to false
. In the same way, something is truthy
simply if it is not considered falsy
. While falsy
may seem like a vague statement, it actually has a specific definition. The following values are considered falsy
:
false
0
or-0
or0n
- any empty string, i.e.
""
null
undefined
NaN
Similarly, anything that is not equal to these is considered truthy
, for example:
- any object, i.e.
{}
, or[]
. - any non-zero number
- any non-empty string
- any non
null
,undefined
, orNaN
value.
Use of truthy and falsy
truthy
and falsy
values have implications in Javascript logic. For example, anything that can be converted to truthy
in a boolean setting (such as if..else
) is converted to true
, and the same goes for falsy
statements.
For example, the following if
statement is true
, simply because "1"
is a truthy
statement:
if("1") {
console.log('ok');
}
If the statement instead said if(0)
, it would return false, since 0
is falsy
. As you get into Javascript, you’ll find references to truthy
and falsy
everywhere, so it’s good to familiarise yourself with the concept now.
More Tips and Tricks for Javascript
- Types may be coming to Javascript
- How Promises and Await work in Javascript
- The Many Quirks of Javascript Dates
- Javascript Ordinals: Adding st, nd, rd and th suffixes to a number
- Javascript Functions
- How to get the last element of an Array in Javascript
- Javascript Types
- How does the Javascript logical AND (&&) operator work?
- How to Stop Using jQuery
- Making your own Email Subscription Service with Node.JS