Introduction to JavaScript – Control Flow: True and False values

Even non-boolean data types, like strings and numbers, can still be used like booleans to determine control flow.

In JavaScript, all values have a truthy or falsy value. This means that they evaluate to true or false when they are used as a part of a control flow condition.

All variables that have been declared and assigned are truthy unless they contain one of the six values listed below:

  • false
  • 0 and -0
  • “” and ‘ ‘ (empty strings)
  • null
  • undefined
  • NaN (Not a Number)

For example:

let variableOne = 'I Exist!';
if (variableOne) {
// This code will run because variableOne contains a truthy value.
} else {
// This code will not run because the first block ran.

The second line of this program checks a condition if (variableOne). By only writing the name of the variable as the condition, we are checking the truthiness of the variableOne. In this case, variableOne behaves like the value true because a string that is not empty is truthy.

Here is an example with numbers:

let numberOfApples = 0;
console.log('Let us eat!'); // This code will not run because 0 is a falsy value
} else {
console.log('No food left!'); // This code will run

Since 0 is one of the six falsy values, the code within the else block runs.

There is an important distinction between a variable’s value and its truthiness:

  • numberOfApples‘s value is 0 because that is the data saved to the variable.
  • numberOfApples is falsy when used in control flow because it exists and does contain one of the six falsy values listed above.


1. Change the value of wordCount so that Great! You’ve started your work! is logged to the console.

2. Change the value of favoritePhrase so that This string doesn’t seem to be empty is logged to the console.

Related Videos: Related Videos.

Related Links:

My little pony learning game in VB.NET

Introduction to JavaScript – Create a Variable: let

How to make a go-back button with PHP code?

Introduction to JavaScript – Variables: Undefined

Introduction to JavaScript – Control Flow

Introduction to JavaScript – Control Flow: if/else Statements

Learn Python Lists

Learn Python Variables and Types

Learn about programming Functions in Python

Introduction to JavaScript – Variables: String Interpolation II

Learn about Python Generators

Introduction to JavaScript – Create a Variable: const

JavaScript Comparison Operators

Why do most sites use cookies?

Learn Code Introspection Python Programming

Learn about JavaScript ELSE STATEMENTS

Introduction to JavaScript – Variables: Review

Hello World Android app built with Android Studio