Key Concepts

Review core concepts you need to learn to master this subject

Control Flow

Control flow is the order in which statements are executed in a program. The default control flow is for statements to be read and executed in order from left-to-right, top-to-bottom in a program file.

Control structures such as conditionals (if statements and the like) alter control flow by only executing blocks of code if certain conditions are met. These structures essentially allow a program to make decisions about which code is executed as the program runs.

if Statement

An if statement accepts an expression with a set of parentheses:

  • If the expression evaluates to a truthy value, then the code within its code body executes.
  • If the expression evaluates to a falsy value, its code body will not execute.

else Statement

An else block can be added to an if block or series of if-else if blocks. The else block will be executed only if the if condition fails.

Logical Operator !

The logical NOT operator ! can be used to do one of the following:

  • Invert a Boolean value.
  • Invert the truthiness of non-Boolean values.

Truthy and Falsy

In JavaScript, values evaluate to true or false when evaluated as Booleans.

  • Values that evaluate to true are known as truthy
  • Values that evaluate to false are known as falsy

Falsy values include false, 0, empty strings, null undefined, and NaN. All other values are truthy.

Comparison Operators

Comparison operators are used to comparing two values and return true or false depending on the validity of the comparison:

  • === strict equal
  • !== strict not equal
  • > greater than
  • >= greater than or equal
  • < less than
  • <= less than or equal

else if Clause

After an initial if block, else if blocks can each check an additional condition. An optional else block can be added after the else if block(s) to run by default if none of the conditionals evaluated to truthy.

Logical Operator &&

The logical AND operator && checks two values and returns a boolean. If both values are truthy, then it returns true. If one, or both, of the values is falsy, then it returns false.

Logical Operator ||

The logical OR operator || checks two values and returns a boolean. If one or both values are truthy, it returns true. If both values are falsy, it returns false.

A B A \ \ B
false false false
false true true
true false true
true true true

switch Statement

The switch statements provide a means of checking an expression against multiple case clauses. If a case matches, the code inside that clause is executed.

The case clause should finish with a break keyword. If no case matches but a default clause is included, the code inside default will be executed.

Note: If break is omitted from the block of a case, the switch statement will continue to check against case values until a break is encountered or the flow is broken.

Ternary Operator

The ternary operator allows for a compact syntax in the case of binary (choosing between two choices) decisions. It accepts a condition followed by a ? operator, and then two expressions separated by a :. If the condition evaluates to truthy, the first expression is executed, otherwise, the second expression is executed.

Conditional Statements
Lesson 1 of 1
  1. 1
    In life, we make decisions based on circumstances. Think of an everyday decision as mundane as falling asleep — if we are tired, we go to bed, otherwise, we wake up and start our day. These …
  2. 2
    We often perform a task based on a condition. For example, if the weather is nice today, then we will go outside. If the alarm clock rings, then we’ll shut it off. If we’re tired, then we’ll go to …
  3. 3
    In the previous exercise, we used an if statement that checked a condition to decide whether or not to run a block of code. In many cases, we’ll have code we want to run if our condition evaluates …
  4. 4
    When writing conditional statements, sometimes we need to use different types of operators to compare values. These operators are called comparison operators. Here is a list of some handy compar…
  5. 5
    Working with conditionals means that we will be using booleans, true or false values. In JavaScript, there are operators that work with boolean values known as logical operators. We can use logic…
  6. 6
    Let’s consider how non-boolean data types, like strings or numbers, are evaluated when checked inside a condition. Sometimes, you’ll want to check if a variable exists and you won’t necessarily w…
  7. 7
    Truthy and falsy evaluations open a world of short-hand possibilities! Say you have a website and want to take a user’s username to make a personalized greeting. Sometimes, the user does not hav…
  8. 8
    In the spirit of using short-hand syntax, we can use a ternary operator to simplify an if…else statement. Take a look at the if…else statement example: let isNightTime = true; if (isNightT…
  9. 9
    We can add more conditions to our if…else with an else if statement. The else if statement allows for more than two possible outcomes. You can add as many else if statements as you’d like, to mak…
  10. 10
    else if statements are a great tool if we need to check multiple conditions. In programming, we often find ourselves needing to check multiple values and handling each of them differently. For exam…
  11. 11
    Way to go! Here are some of the major concepts for conditionals: An if statement checks a condition and will execute a task if that condition evaluates to true. if…else statements make binar…

What you'll create

Portfolio projects that showcase your new skills

Pro Logo

How you'll master it

Stress-test your knowledge with quizzes that help commit syntax to memory

Pro Logo